Einführung in Server-Backups
Ein Server-Backup ist eine Kopie aller Daten, die auf einem Server gespeichert sind. Es dient dazu, Daten zu schützen und zu sichern, falls ein Server ausfallen oder beschädigt werden sollte.
Warum Server-Backups wichtig sind
Server-Backups sind von entscheidender Bedeutung, da sie verhindern, dass wichtige Daten verloren gehen, wenn ein Server ausfällt oder beschädigt wird. Überdies können sie auch dazu beitragen, dass das System nach einem Ausfall schnell wiederhergestellt wird.
Weiterführende Informationen zum Thema Backups
Arten von Server-Backups
Es gibt drei Hauptarten von Server-Backups: vollständige Backups, inkrementelle Backups und differentielle Backups.
Vollständiges Backup
Ein vollständiges Backup beinhaltet eine Kopie aller Daten auf dem Server. Es wird normalerweise einmal pro Woche oder Monat durchgeführt.
Inkrementelles Backup
Ein inkrementelles Backup beinhaltet nur die Daten, die seit dem letzten Backup geändert oder hinzugefügt wurden. Es wird häufiger als ein vollständiges Backup durchgeführt, normalerweise täglich oder wöchentlich.
Differentielles Backup
Ein differentielles Backup beinhaltet die Daten, die seit dem letzten vollständigen Backup geändert oder hinzugefügt wurden. Es wird häufiger als ein vollständiges Backup durchgeführt, normalerweise täglich oder wöchentlich.
Wie Server-Backups durchgeführt werden
Es gibt zwei Hauptmethoden für die Durchführung von Server-Backups: manuelle Server-Backups und automatisierte Server-Backups.
Manuelle Server-Backups
Bei manuellen Server-Backups werden die Daten manuell auf ein externes Speichermedium kopiert, wie eine externe Festplatte oder ein Netzwerkspeichergerät. Diese Methode ist einfach, aber zeitaufwändig und anfälliger für menschliche Fehler.
Automatisierte Server-Backups
Automatisierte Server-Backups werden mithilfe von Backup-Software durchgeführt. Die Software kann ein vollständiges, inkrementelles oder differentielles Backup automatisch planen und ausführen, wodurch Zeit und mögliche menschliche Fehler minimiert werden.
Empfehlungen für die Wahl des richtigen Server-Backups
Wenn Sie ein Server-Backup auswählen, sollten Sie die folgenden Faktoren berücksichtigen:
- Größe und Komplexität Ihrer Daten
- Häufigkeit der Änderungen an Ihren Daten
- Verfügbarkeit Ihrer Daten (z. B. müssen sie jederzeit zugänglich sein?)
- Kosten für das Backup (einschließlich Hardware- und Softwarekosten)
Fazit
Ein Server-Backup ist ein wichtiger Teil des Schutzes Ihrer Daten und Ihres Systems. Es gibt verschiedene Arten von Server-Backups, einschließlich vollständiger, inkrementeller und differentieller Backups, die je nach Größe und Komplexität Ihrer Daten ausgewählt werden können. Stellen Sie sicher, dass Sie die richtige Backup-Lösung für Ihre Bedürfnisse wählen, indem Sie Faktoren wie Größe, Häufigkeit und Verfügbarkeit Ihrer Daten berücksichtigen.
Mailcow Backup via Script und Cronjob
Das mitgelieferte Backup-Script von Mailcow bietet uns alles, was für eine Sicherung notwendig ist. Dieses Script liegt in folgendem Verzeichnispfad:
- /opt/mailcow-dockerized/helper-scripts/
Das Script sollte nicht an eine andere Stelle des Systems kopiert werden, da es ansonsten zu Fehlerhaften Backups führen kann.
Um eine Sicherung zu initiieren, geben Sie „backup“ als ersten Parameter und eine oder mehrere zusichernde Komponenten als nächsten Parameter an. Sie können auch „all“ als zweiten Parameterverwenden, um alle Komponenten zu sichern. Fügen Sie --delete-days n hinzu, um Backups zu löschen, die älter als n Tage sind.
# Syntax
./helper-scripts/backup_and_restore.sh backup (vmail|crypt|redis|rspamd|postfix|mysql|all|--delete-days)
# Alles sichern, Sicherungen älter als 3 Tage löschen
./helper-scripts/backup_and_restore.sh backup all --delete-days 3
# vmail-, crypt- und mysql-Daten sichern, Sicherungen löschen, die älter als 30 Tage sind
./helper-scripts/backup_and_restore.sh backup vmail crypt mysql --delete-days 30
# vmail sichern
./helper-scripts/backup_and_restore.sh backup vmail
Alles anzeigen
Da jetzt die Syntax bekannt ist, erstellen wir hierfür einen Cronjob, welcher uns automatisiert in ein Zielverzeichnis das Backup (ich nutze jetzt all als Parameter, da ich ein Vollbackup erzeugen möchte.) erstellt. Damit das Ganze auch funktioniert, erstelle ich im Vorfeld unter /home ein Verzeichnis mit dem Namen mailcow-backup.
Bedenkt bitte dabei, dies soll nur als Beispiel dienen. Ein Backup sollte nie auf demselben Geräte abgelegt und gespeichert werden! Hier empfehle ich einen externen Storage zu verwenden, wie der Hetzner Storage.
So sieht das Script aus, wenn es seine Arbeit verrichtet:
Öffnen Sie in Ihrem Terminal crontab -e und fügen Sie eine angepasste Form dieses Befehls hinzu:
5 4 * * * cd /opt/mailcow-dockerized/; MAILCOW_BACKUP_LOCATION=/mnt/mailcow_backups /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup mysql crypt redis --delete-days 3
# and day of week (dow) or use '*' in these fields (for 'any').
#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h dom mon dow command
# Mailcow Backup
0 * * * * cd /opt/mailcow-dockerized/; MAILCOW_BACKUP_LOCATION=/home/mailcow-backup/ /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all --delete-days 14
Alles anzeigen
Mir selbst sind E-Mails essenziell wichtig, daher lasse ich diese jede Minute sichern, sowie für vierzehn Tage aufbewahren, bevor diese gelöscht werden. Natürlich können Sie die Zeiten anpassen. Unter folgendem Link finden Sie eine Hilfe:
Crontab.guru - The cron schedule expression editor
Sollten Sie weitere Möglichkeiten suchen, um Ihr Backup anzulegen, können Sie auch die offizielle Dokumentation von Mailcow zurate ziehen.
Über den Autor
Ich bin IT-Spezialist im Fachbereich der IT-Administratoren. Neben Beruf und Familie, erstelle ich als, Teil meines Hobbys, gerne Tutorials, sowie WoltLab Stile. Aktuell befinde ich mich auf meinem Informationstechnikermeister.
Kommentare
Neu erstellte Kommentare unterliegen der Moderation und werden erst sichtbar, wenn sie durch einen Moderator geprüft und freigeschaltet wurden.
Neu erstellte Kommentare unterliegen der Moderation und werden erst sichtbar, wenn sie durch einen Moderator geprüft und freigeschaltet wurden.