Der Befehl rsync

file-save-featured

rsync steht für remote synchronization protocol und ist ein schnelles und vielseitiges Tool zum Kopieren von Dateien. Es kann sowohl lokal als auch auf ein anderes System / von einem anderen System mit Hilfe des Remote-Rsync-Daemons oder eines Remote-Shell-Programms (ssh oder rsh) kopieren. Es bringt viele Optionen mit, die genutzt werden können, um jeden Aspekt seines Verhaltens zu steuern. Sein Hauptmerkmal ist der Delta-Transfer-Algorithmus, der die gesendete Datenmenge über das Netzwerk reduziert, indem nur die Unterschiede zwischen den Quelldateien und den vorhandenen Dateien im Ziel gesendet werden. Häufig wird rsync für "Backups" und "Spiegelungen" oder auch als "verbesserter Kopierbefehl" verwendet. Es steht unter der GNU General Public License (GPL).

Installation

Für die Verwendung des rsync Befehls wird ein gleichnamiges Paket benötigt. Es ist nicht auf allen Linux-/UNIX- Betriebssystemen, wie beispielsweise Debian, vorinstalliert.

Die Installation können Sie mit dem folgenden Befehl durchführen:

apt-get install rsync

Beachten Sie, dass rsync auf dem Quell- und auf dem Zielsystem installiert sein muss.

Wenn Sie näheres zur Paket- und Quellenverwaltung mit apt erfahren wollen, lesen Sie auch unseren Beitrag zu diesem Thema.

Syntax

Die allgemeine Syntax des Befehls rsync lautet:

rsync [OPTIONEN] [Quell-Verzeichnis(se)] [Ziel-Verzeichnis]

Anstelle des Platzhalters [Quell-Verzeichnis(se)] (erster Parameter) wird angegeben, aus welchem/welchen Verzeichnis(sen) gelesen werden soll.

Anstelle des Platzhalters [Ziel-Verzeichnis] (zweiter Parameter) wird angegeben, in welches Verzeichnis kopiert werden soll.

Sollte der zweite Parameter weggelassen werden, so wird als Quell-Verzeichnis das aktuelle Verzeichnis, in dem Sie sich befinden, verwendet, und der erste Parameter wird als Ziel-Verzeichnis interpretiert.

Wichtige Optionen

Der Befehl rsync bietet viele Optionen, mit denen sein Verhalten gesteuert werden kann. Die wichtigsten dieser Optionen werden nun einmal kurz erläutert. 

Überblick

-u - überspringt Dateien, die im Ziel neuer sind als in der Quelle

Mit der Option -u (update) werden Dateien, die im Ziel-Verzeichnis aktueller sind als im Quell-Verzeichnis, übersprungen.

rsync -u [Quell-Verzeichnis] [Ziel-Verzeichnis]

-v - Ausführlichkeit erhöhen

Mit der Option -v (verbose) werden alle ausgeführten Schritte während des Synchronisierens ausgegeben.

rsync -v [Quell-Verzeichnis] [Ziel-Verzeichnis]

-n - Testdurchlauf

Mit der Option -n wird nur simuliert, was passieren würde.

rsync -n [Quell-Verzeichnis] [Ziel-Verzeichnis]

-z - Dateikomprimierung

Mit der Option -z werden alle Dateien während der Übertragung komprimiert.

rsync -z [Quell-Verzeichnis] [Ziel-Verzeichnis]

-c - Prüfsummen-Bildung

Mit der Option -c (checksum) werden Prüfsummen erstellt, um Dateien zwischen Quelle und Ziel zu vergleichen. Ohne diese Option würden Dateien auf Größe und Zeitstempel verglichen werden. Der Vorteil ist, dass überflüssige Kopiervorgänge (beispielsweise bei nur geänderter Änderungszeit) vermieden werden. Nachteil ist, dass der Vergleich durch das Bilden der Prüfsummen deutlich länger dauert.

rsync -c [Quell-Verzeichnis] [Ziel-Verzeichnis]

-h - wandelt Zahlen in ein für Menschen besser lesbares Format um

Mit der Option -h (human-readable) werden Kapazitätsangaben in Log-Dateien und der Ausgabe in ein für Menschen besser lesbares Format umgewandelt. Für 1000 wird K, 1000*1000 M und 1000*1000*1000 G angegeben. Wird die Option doppelt angegeben (-hh), so wird anstelle mit 1000 1024 gerechnet.

rsync -h [Quell-Verzeichnis] [Ziel-Verzeichnis]

--bwlimit - Angabe der maximalen Übertragungsrate

Mit der Option --bwlimit wird die maximal verwendete Bandbreite der Übertragungen festgelegt. Wird diese Option nicht angegeben, so nutzt rsync die gesamte verfügbare Bandbreite. Der Wert [RATE] für die maximale Übertragungsrate wird standardmäßig in KB (1024 Bytes) angegeben. Er kann aber auch beispielsweise in MB angegeben werden, indem direkt hinter dem Wert ein m gesetzt wird.

rsync --bwlimit=[RATE] [Quell-Verzeichnis] [Ziel-Verzeichnis]

-e - Auswahl der Remote-Shell

Mit der Option -e wird die von rsync verwendete Remote-Shell ausgewählt. Gewöhnlich wird dafür ssh (secure shell) verwendet (-e ssh).

rsync -e ssh [Quell-Verzeichnis] [Ziel-Verzeichnis]

--delete - Löscht Dateien im Ziel, die in der Quelle nicht mehr vorhanden sind

Mit der Option --delete werden die Dateien, die sich nicht mehr im Quell-Verzeichnis befinden, aus dem Ziel-Verzeichnis entfernt. Für eine Datensicherung ist diese Option nicht zu empfehlen.

rsync --delete [Quell-Verzeichnis] [Ziel-Verzeichnis]

-b und --backup-dir - Sicherung gelöschter und veränderter Dateien in angegebenes Verzeichnis

Mit der Option -b (backup) wird angegeben, dass gelöschte und veränderte Dateien in das mit der Option --backup-dir angegebene Backup-Verzeichnis gesichert werden. 

rsync -b [Quell-Verzeichnis] [Ziel-Verzeichnis] --backup-dir=[Backup-Verzeichnis]

--stats - Ausführlicherer Bericht am Ende einer Übertragung

Mit der Option --stats wird nach einer Übertragung ein ausführlicherer Bericht ausgegeben.

rsync --stats [Quell-Verzeichnis] [Ziel-Verzeichnis]

-a - fasst mehrere Optionen zusammen

Mit der Option -a (archive) werden folgende Optionen zusammengefasst, die dafür sorgen, dass unter anderem alle Rechte und Eigentümer der Quelldateien auf dem Ziel übernommen werden. Dies wurde von den Entwicklern deshalb so gehandhabt, da es sich hier um grundsätzliche Optionen handelt, die nahezu immer zum Einsatz kommen. Sie können diese Optionen bei Bedarf auch einzeln nutzen:

-r - (recursive) kopiert Unterverzeichnisse

-l - (links) kopiert symbolische Links

-p - (perms) behält Berechtigungen der Quelldatei bei

-t - (times) behält Änderungszeiten der Quelldatei bei

-g - (group) behält Gruppenrechte der Quelldatei bei

-o - (owner) behält root-Besitzrechte der Quelldatei bei

-D - (Devices) behält root-Gerätedateien der Quelldatei bei

rsync -a [Quell-Verzeichnis] [Ziel-Verzeichnis]

--help - Hilfe

Mit der Option --help wird die Hilfeseite von rsync ausgegeben. Dies ist sehr praktisch, da sich kaum jemand alle Optionen merken kann / möchte. Außerdem sehen Sie dort weitere Optionen, die hier nicht aufgezeigt wurden.

rsync --help

Abonniere JETZT unseren Newsletter!


Verpasse nie wieder neue Beiträge und exklusive Insider-Only-Inhalte!

Tristan Stanullo

Click Here to Leave a Comment Below

Leave a Comment: