Mit rsync deine Server-Daten im Handumdrehen sichern
Backups sollten ein fixer Bestandteil deiner Serverplanung sein. Mit dem kostenlosen Synchronisierungs-Tool bzw. -Protokoll rsync lassen sich individuelle Sicherungen rasch konfigurieren und umsetzen.
So richtest du rsync-Backups auf Linux-Servern ein
Um rsync auf Linux-Systemen zu nutzen, installierst du das Protokoll im gleichnamigen Paket und steuerst deine Sicherungen direkt über Terminal-Befehle. Wir zeigen dir am Beispiel von Ubuntu die entscheidenden Schritte für die Einrichtung deiner Backup-Prozesse sowie hilfreiche Praxisbeispiele.
In der Regel ist rsync unter Ubuntu bereits vorinstalliert. Falls nicht, kannst du die Installation mit diesem Befehl einfach nachholen:
sudo apt-get install rsyncbashNach der Installation definierst du per Terminal-Befehl Quell- und Zielverzeichnis sowie die gewünschten Optionen. Gib dabei den Ursprungspfad und das Verzeichnis an, in dem rsync die Sicherheitskopie speichern soll. Den Archivmodus startest du beispielsweise so:
rsync -a Quellverzeichnis Zielverzeichnisbashrsync-Backup: Fünf praktische Einsatzbeispiele
Sobald du die Basisbefehle beherrschst, hast du mit rsync ein mächtiges Werkzeug zum Kopieren von Daten und Erstellen von Backups. Du kannst entweder eigene Befehlskombinationen erstellen oder auf bewährte Setups zurückgreifen. Wir haben fünf gängige Szenarien für rsync-Backups für dich zusammengefasst.
Klassisches Backup im Archivmodus
Der Archivmodus übernimmt standardmäßig sämtliche Dateien und Unterverzeichnisse aus der Quelle. Dabei bleiben Berechtigungen, Zeitstempel und Gerätedaten erhalten. Da er viele Optionen in einem Parameter bündelt, ist er meist die effizienteste Lösung. Wenn du zusätzlich den Parameter -v nutzt, erhältst du während des Vorgangs detaillierte Statusmeldungen.
rsync -av Quellverzeichnis ZielverzeichnisbashGib als Quell- und Zielpfad einfach das jeweilige Ausgangsverzeichnis sowie den Speicherort für die Sicherungskopie an.
Exakte 1-zu-1-Kopie des Verzeichnisses
rsync kopiert nicht nur Daten, sondern kann auch identische Abbilder von Ordnerstrukturen erstellen. Bei dieser Variante werden alle Dateien im Zielordner gelöscht, die in der Quelle nicht mehr existieren.
rsync -av --delete Quellverzeichnis ZielverzeichnisbashBestimmte Dateiformate beim Backup ausschließen
Möchtest du bestimmte Dateitypen vom Backup ausnehmen, nutzt du dafür --exclude. Damit definierst du ein Muster, das rsync anweist, diese Dateien zu ignorieren. Im folgenden Beispiel werden etwa .txt-Dateien übersprungen:
rsync -av --exclude'*.txt' Quellverzeichnis ZielverzeichnisbashSicherung nach Dateigröße filtern
Falls nicht das Format, sondern die Dateigröße entscheidend für die Auswahl ist, kommen die Parameter --max-size bzw. --min-size zum Einsatz. Mit dem folgenden Befehl werden nur Dateien gesichert, die zwischen 10 MB und 100 MB groß sind:
rsync -av --min-size=10MB --max-size=100MB Quellverzeichnis ZielverzeichnisbashBackups mit automatischer Zeichenkonvertierung
Manchmal benötigen Daten im Ziel ein anderes Zeichenformat – etwa beim Transfer von einem Mac auf einen Linux-Server. Apple nutzt oft UTF8-MAC, was unter Linux zu Problemen bei Umlauten führen kann. Mit der Option --iconv passt du die Kodierung direkt beim Sichern an (hier von UTF8-MAC auf UTF8):
rsync -av --iconv=UTF8-MAC,UTF8 Quellverzeichnis ZielverzeichnisbashWichtige rsync-Optionen in der Übersicht
Über Optionen (als Kürzel oder ausgeschrieben) passt du deine rsync-Backups individuell an. Die relevantesten Parameter haben wir hier für dich aufgelistet:
| Option | Funktion |
|---|---|
-r, --recursive
|
Sicherung inkludiert alle vorhandenen Unterverzeichnisse |
-u, --update
|
Überspringt Dateien, die im Ziel aktueller sind als in der Quelle |
-c, --checksum
|
Vergleich von Dateien mittels Prüfsummen |
-l, --links
|
Übernimmt Symlinks als Verknüpfung (statt als Datei) |
-p, --perms
|
Behält Dateiberechtigungen unverändert bei |
-g, --group
|
Behält die Gruppenrechte der Dateien bei |
-t, --times
|
Übernimmt Zeitstempel der letzten Änderung |
-o, --owner
|
Erhält den Dateibesitzer (erfordert Admin-Rechte) |
-D, --devices
|
Übernimmt Gerätedaten vollständig |
-z, --compress
|
Komprimiert Daten während der Übertragung automatisch |
--compress-level=NUM
|
Legt den Komprimierungsgrad fest (0 für keine bis 9 für maximale Kompression) |
-v, --verbose
|
Zeigt ausführliche Details zum Fortschritt an |
-q, --quiet
|
Unterdrückt alle Meldungen (außer Fehlern) |
-a, --archive
|
Archivmodus (Standard); entspricht der Kombination -rlptgoD
|
-n, --dry-run
|
Simuliert den Vorgang ohne reale Änderungen |
-h, --help
|
Ruft das Hilfemenü auf |
--bwlimit=KBPS
|
Limitiert die Bandbreite; z. B. --bwlimit=30\ für 30 kbit/s
|
--exclude=MUSTER
|
Schließt Muster aus; z. B. --exclude Beispielordner\ ignoriert den genannten Ordner
|
--delete
|
Löscht Dateien im Ziel, die in der Quelle fehlen |
--progress
|
Gibt Infos zu Dauer und Geschwindigkeit aus |
--list-only
|
Listet Dateien nur auf, statt sie zu kopieren |
--stats
|
Zeigt eine Statistik über transferierte Datenmengen |
--max-size=SIZE
|
Setzt Größenlimit; z. B. --max-size=10MB für maximal 10 MB pro Datei
|
--ignore-errors
|
Ignoriert Fehler und bricht den Prozess nicht ab |