Kommando rsync (Fern)-Synchronisation der Daten
ANLASS:
Daten müssen extra gesichert werden, falls Rechner oder primäres Speichermedium beschädigt wird.
LÖSUNG:
Ich sichere primäre Daten mindestens einmal täglich mit Hilfe des
rsync-Befehls (remote synchonization).
Der Befehl synchronisiert Daten, die auf zwei fern liegenden Rechnern liegen,
wobei der lokale Rechner entweder Quelle oder Ziel sein muss.
2 Möglichkeiten der Verbindung werden unterstützt: Mit Hilfe einer
fernen Shell
oder eines rsync-Dämons auf dem fernen Rechner.
Der Datentransfer erfolgt heutzutage über eine kryptographisch gesicherte Shell
wie ssh.
Mein Anwendungsfall ist relativ einfach, da beide Verzeichnisse auf demselben (lokalen) Rechner liegen.
rsync -avz --inplace --delete --progress --log-file=Name_Log_datei Q_Verzeichnis Z_Verzeichnis
-
sync Optionen
Option Bedeutung a archive
entspricht folgende Optionsliste r p g o t l D:- Rekursiver Transfer (r),
- Merkmale werden beibehalten (p=permissions, g=group, o=owner, t=times),
- Symbolische Links werden als solche übertragen (l).
- Die D-Option betrifft Device-Dateien, benötigt Admin-Rechte und ist nicht relevant in meinem Fall.
v verbose
Standardmäßig die Synchronisation ist stumm. v einmal eingetragen zeigt, welche Dateien übertragen werden. v zweimal eingetragen zeigt, welche Dateien nicht übertragen werden. In beiden Fällen wird eine Zusammenfassung angehängt.z compress
Übertragene Daten werden komprimiert.inplace Die übertragene Datei ersetzt ggf. eine existierende Datei mit gleichem Namen (keine Duplikation) executability
Die Durchführbarkeit-Bits werden behalten. Wenn Option p (bzw. a) aktiv ist, ist der Eintrag überflüssig. delete Dateien ohne Entsprechung im Quellenverzeichnis werden aus dem Zielverzeichnis gelöscht. progress
zeigt den laufenden Übertragungsstatus. log-file schreibt das Übertragungsprotokoll in die genannte Datei. -
Weitere Infos zur Syntax
Eingabe des Quellenverzeichnisses
Will man den Inhalt von Q-Verzeichnis direkt in Z_Verzeichnis synchronisieren?
Damit rsync den Inhalt von Z-Verzeichnis dem Inhalt von Q_Verzeichnis angleicht, muss dem Namen von Q-Verzeichnis einen Schrägstrich "/" angehängt werden, rsync -avz --inplace --delete --progress Name_Q_Verzeichnis/ Z_VerzeichnisAnsonsten (Name des Quellenverzeichnisses ohne abschließenden Schrägstrich), wird das Quellenverzeichnis als Unterverzeichnis vom Zielverzeichnis - Z_Verzeichnis/Q_Verzeichnis - synchronisiert.