Rsync

Aus Foxwiki

Synchronisation von Verzeichnisbäumen

Beschreinung

  • unidirektional
  • Delta-Transfer-Algorithmus
    • Nur geänderte Teile einer Datei werden übertragen
  • Quick-Check-Algorithmus
    • Größe und Änderungszeit von Dateien in Quelle und Ziel werden verglichen
  • Daten können mit SSH verschlüsselt übertragen werden

Befehlssyntax

rsync [Optionen] Quelle(n) Ziel

Option -a

  • Ist also äquivalent zu -rlptgoD

Diese fasst folgende Optionen zusammen:

  • -r kopiert Unterverzeichnisse
  • -l kopiert symbolische Links
  • -p behält Rechte der Quelldatei bei
  • -t behält Zeiten der Quelldatei bei
  • -g behält Gruppenrechte der Quelldatei bei
  • -o behält Besitzrechte der Quelldatei bei (nur root)
  • -D behält Gerätedateien der Quelldatei bei (nur root)

Anwendungen

rsync -a /home/user /data/backup

d.h. erzeugt Verzeichnis /user in /data/backup, also wird in /data/backup/user geschrieben.

rsync -a /home/user/ /data/backup

d.h. Daten aus /home/user/ werden in das Verzeichnis /data/backup geschrieben.

  • Ohne Angabe Slash beim Quellverzeichnis wird im angegebenen Zielverzeichnis zusätzliches Unterverzeichnis erstellt.

Links

  1. man rsync
  2. Wikipedia
  3. Thomas Krenn
  4. wiki.ubuntuusers

rsync

rsync - remote sync - dient der unidirektionalen Datensynchronisation von einem Quell- zu einem Zielverzeichnis.

  • Verzeichnisse können auf unterschiedlichen Rechnern liegen.
  • wird häufig für die Erstellung von Backups verwendet

Syntax

rsync [Optionen] [Quelle] [Ziel]

Optionen

Option Beschreibung
-a --archive gleiche Bedeutung wie -rlptgoD
-r --recursive Unterverzeichnisse kopieren
-l --links symbolische Links kopieren
-p --perms Rechte der Quelldatei beibehalten
-t --times Zeiten der Quelldatei beibehalten
-g --group Gruppenrechte der Quelldatei beibehalten
-o --owner Besitzrechte der Quelldatei beibehalten (nur root)
-D --devices --specials Gerätedateien der Quelldatei beibehalten (nur root)
-v --verbose zeigt während der Ausführung an, welche Dateien synchronisiert werden
--delete entfernt Dateien im Zielverzeichnis, die im Quellverzeichnis nicht mehr vorhanden sind
-n --dry-run führt zu einem 'Probelauf' - ohne etwas zu kopieren
-e