Backups mit Rsync – Part 2: Snapshots

Im ersten Teil haben wir nur ein Backup erstellt. Wen wir uns nun eine Datei überschrieben haben, und das erst merken, nachdem wir ein weiteres Backup erstellt haben, ist unsere Datei auch im Backup überschrieben worden.
Um das Problem zu lösen, müssen wir mehrere Backups machen, ein weiteres vollständiges Backup braucht sehr viel Platz. Ein inkrementelles Backup spart zwar den Platz, aber gelöschte Dateien werden nicht registriert und eine wiederherstellung ist mit viel suchen, oder Zusammenführen der Backups verbunden.
Rsync löst das Problem mit der Option --link-dest.

# rsync -a \
–-exclude=’/proc/**’ \
–-exclude=’/sys/**’ \
-–exclude=’/mnt/**’ \
-–exclude=’/tmp/**’ \
--link-dest='../laptop' \
/ server:/backups/laptop2

Rsync vergleicht nun vor der übertragung einer Datei, ob diese schon im Verzeichnis ‘../laptop’ vorhanden ist. Wenn die Datei vorhanden ist, wird die Datei nicht erneut kopiert, sondern stattdessen ein Hardlink zu der bereits vorhandenen Datei angelegt.
Der angegebene Pfad muss immer relativ zum Ziel angegeben werden.
Das Backup in laptop2 verhällt sich jetzt wie ein Vollständiges Backup, die Verzeichnisse laptop und laptop2 benötigen zusammen aber nur den Platz eines vollständigen, und eines inkrementellen Backups. Durch die Verwendung von Hardlinks kann das Verzeichnis laptop auch gelöscht werden, und laptop2 ist immer noch vollständig, da tatsächlich nur Daten gelöscht werden die sich im 2. Backup geändert haben.

Leave a Reply

Your email address will not be published. Required fields are marked *