Zum Hauptinhalt springen

VPS: Linux-Server mit Rsync sichern

Diese Anleitung wurde mit den folgenden Produkten erstellt:

(Details können je nach Produkten verschiedener Anbieter variieren, aber die Hauptkonzepte bleiben gleich)

Rsync:

Backups kannst du mit dem Tool Rsync machen.
Die Daten können lokal auf dem System in ein anderes Verzeichnis/Laufwerk oder auf ein entferntes System kopiert werden.

Daten in ein anderes lokales Verzeichnis oder Laufwerk kopieren:

Info

Achtung: Der erste Durchlauf kann je nach Datenmenge deutlich länger dauern als die folgenden. Das liegt daran, dass Rsync beim ersten Mal alle Daten synchronisiert, ab dem zweiten Mal nur noch geänderte Daten übertragen werden.

So entsteht ein inkrementelles Backup.

Schritt 1

Rsync kannst du mit folgendem Befehl installieren:

apt install rsync

Nach der Installation kannst du es direkt nutzen.

Schritt 2

In diesem Beispiel soll der Ordner Client unter /home in den Ordner Backup unter /home synchronisiert werden.

Das geht mit folgendem Befehl:

rsync -arz /home/Client /home/Backup

-a=Archivmodus, kopiert alle Attribute


-r=Rekursiv, synchronisiert auch Unterordner


-z=Kompression, je nach Datenmenge/-größe wird komprimiert

Der Ordner wurde erfolgreich synchronisiert.

Wenn jetzt eine Datei etc. im Client-Ordner gelöscht wird, bleibt sie im Backup-Ordner erhalten.
Da die Dateien aber immer 1:1 synchron sein sollen, kann der rsync-Befehl einfach angepasst werden, damit auch Daten, die im Client-Ordner nicht mehr vorhanden sind, aus dem Backup-Ordner entfernt werden.

Der angepasste Befehl lautet:

rsync -arz --delete /home/Client /home/Backup

-a=Archivmodus, kopiert alle Attribute


-r=Rekursiv, synchronisiert auch Unterordner


-z=Kompression, je nach Datenmenge/-größe wird komprimiert


--delete= Löscht Daten, die in der Quelle nicht mehr existieren, aber noch im Ziel vorhanden sind

Schritt 3

Damit du den Befehl nicht immer manuell ausführen musst, kannst du ihn einfach in einen Cronjob packen.
Zum Beispiel soll täglich um 3 Uhr morgens ein Backup erstellt werden:

Öffne crontab -e:

Mit der Nummer 1 kannst du "nano" als Editor nutzen. Mit der Nummer 2 kannst du "vim" als Editor nutzen.

Nachdem die Datei z.B. mit Nano geöffnet wurde, kannst du einen Cronjob erstellen und eintragen.
Einen Cronjob kannst du mit diesem Generator erstellen.

Der eingetragene Cronjob sieht dann so aus:

0 3 * * * rsync --progress -arz --delete -e  "ssh -i /home/sshkey/keybackup" /home/Client/ root@123.123.123.123:/home/Backup/Home-Server1/ >/dev/null 2>&1

Jeden Tag um 3 Uhr morgens wird der Befehl ausgeführt und ein Backup erstellt.