Ohje ohje, nun sind schon wieder Monate seit meinem letztem Eintrag vergangen und es wird daher mal wieder Zeit für einen neuen Eintrag. Also dann mal los:
Diesmal möchte ich über das Thema sprechen, wie ich Backups auf meinem Server mache. Dazu benutze ich zwei verschiedene Methoden. Einmal verwende ich den guten alten dump Befehl um Sicherungen von den wichtigsten Laufwerken zu erstellen. Dazu habe ich mir ein Shell Script geschrieben, mit dem ich einmal pro Woche ein Level-0 Dump erstelle. Das Level-0 Dump ist eine komplette Sicherung des Dateisystems. Den Rest der Woche erstelle ich täglich ein Level-1 Dump, bei dem immer nur die Änderungen seit dem letzten Level-0 Dump gesichert werden. Die erstellten Dumps werden per rsync auf einen anderen Rechner kopiert.
Die benutzen Cronjobs:
# Level 0 Dumps erstellen
0 2 * * 0 /root/Scripts/makeDumps.sh 0 > /dev/null
# Level 1 Dumps erstellen
0 1 * * 1-6 /root/Scripts/makeDumps.sh 1 > /dev/null
Die andere Methode ist in Wirklichkeit kein Backup, den dort benutze ich die Snapshots von UFS2, dem Dateisystem von FreeBSD. Snapshots speichern den aktuellen Zustand des Dateisystem. Wenn nun z.B. Dateien gelöscht werden, bleiben diese immer noch im Dateisystem erhalten, solange noch ein Snapshots auf diese zeigt. Das Problem mit den Snapshots ist eben, dass sie ebenfalls im Dateisystem gespeichert werden, sollte nun ein Fehler im Dateisystem auftreten oder die Festplatte ausfallen, sind die Daten verloren. Aus diesem Grund sind Snapshots auch keine richtigen Backups und ich benutze sie auch nur bei meiner /home Partition. Die Daten die dort liegen, sind auch noch auf anderen Datenträgern vorhanden (externe HDD) und dumps von diesem Laufwerk würden einfach lange dauern und zu groß werden. Ich benutze Snapshots nur um versehentliches löschen von Daten zu vermeiden. Dazu habe ich ebenfalls ein kleines Ruby Script geschrieben. Damit das Script funktioniert muss die Konfigurationsdatei “snapshot.config“ existieren. Die Einträge sehen z.B. wie folgt aus:
/home,3;
/data,2;
Das bedeutet das z.B. von dem Dateisystem /home maximal 3 Snapshots erstellt werden.
Weitere gute Informationen und detailliertere Anleitungen über das Thema Datensicherung/Backups in BSD findet ihr im FreeBSD Handbuch und hier auch noch.