Synchronisation von Daten auf Synology Diskstation mit RSync

(Last Updated On: 7. Dezember 2014)

in einem vergangenen Post habe ich beschrieben, wie man Daten auf einer Synology-NAS mit Hilfe von unison synchronisieren kann.Unison ist eine Zwei-Wege-Synchronisation, kann also die Veränderungen von zwei Verzeichnissen auflösen (egal in welchem verzeichnis man etwas geändert hat, das andere Verzeichnis erhält die Änderung auch). Heute wollen wir RSync durchnehmen – eine Ein-Weg-Synchronisation. Das bedeutet wes werden nur die Änderungen, die in einem Verzeichnis passieren, auf das zweite Verzeichnis übertragen. Unison ist auch zur Ein-Wege-Synchronisation fähig und RSync zur Zwei-Wege-synchronisation – aber um das zu bewerkstelligen ist in den Tools ziemlich viel Arbeit zu erledigen, da man viel manuell herumwursteln muss. Am besten, man nutzt die Tools jeweils für den Zweck, für den sie geschaffen wurden. RSync als Ein-Wege-synchronisation eignet sich also sehr gut, um Änderungen eines Verzeichnisses, in dem man ständig Veränderungen durchführt, auf ein anderes Verzeichnis zu übertragen – um das zweite Verzeichnis beispielsweise als Backup zu nehmen. Somit eignet sich RSync beispielsweise, um sich desöfteren ändernde Konfigurationsdateien zu sichern – oder etwa eine Adressbuchdatei mit den eigenen E-Mail-Kontakten. Oder beispielsweise zum Sichern seines Dropbox-Ordners auf eine externe Festplatte.

Prüfen, ob rsync installiert wurde

which rsync

die binary sollte unter /opt/bin/rsync liegen

Nun wollen wir synchronisieren. In meinem beispiel habe ich zwei Verzeichnisse, die nicht abschließend synchronisiert sind. Es handelt sich um zwei externe USB-Festplatten, die unter /volumeUSB1/usbshare1-2 und /volumeUSB3/usbshare3 liegen.

Wir können Dateien mit rsync entweder mit dem Flag -r synchronisieren – dies synchronisiert fast alle Daten inklusive Unterverzeichnisse. Wenn wir stattdessen das Flag -a benutzen, beinhaltet dies das Flag -r, mit dem Unterschied, dass zusätzlich symbolische Link und die chmod-Permissionattribute mit synchronisiert werden. Deswegen ist -a die Regel beim Synchronisieren geworden. Man kann aber auch beide Flags miteinander kombinieren, was die empfohlene Variante ist

rsync -ar /volumeUSB1/usbshare1-2/ /volumeUSB3/usbshare3/

Wichtig ist außerdem,. dass wir die beiden Verzeichnisse mit abschließenden / angeben. Wenn wir den abschließenden / vergessen, werden die verzeichnisse jeweils in das andere verzeichnis reingeschoben. Das heißt wird haben dann ein verzeichnis /volumeUSb1/usbshare1-2/usbshare3 und ein Verzeichnis /volumeUSB3/usbshare3/usbshare1-2, wenn wir die abschließenden Slashes vergessen.

Es macht desweiteren sinn, die daten während des Dateitransfers zu komprimieren. Das geht mit dem Flag -z.

rsync -arz /volumeUSB1/usbshare1-2/ /volumeUSB3/usbshare3/

Jetzt müssen wir noch verhindern, dass aktuellere Dateien überschrieben werden. Das machen wir mit dem Flag -u für update. Damit werden Dateien, die neuer sind als auf der Gegenstelle, nicht überschrieben.

Ebensfalls sinnvoll ist das Flag -P. Mit diesem erhalten wir einen Fortschrittsbalken und können unterbrochene Synchronisationsvorgänge fortsetzen.

Damit wir wirklich eine Synchronisation durchführen, müssen wir Dateien, die im Quellverzeichnis gelöscht werdne, auch im Zielverzeichnis löschen lassen. Das macht rsync aus sicherheitsgründen aber nicht standardmäßig, da hier bei unerfahrenenen Nutzern unnötig daten velroren gehen können. WEnn wir also entfernte Dateien auch im Zielverzeichnis löschjenwollen, müssen wir die Option –delete anfügen.

rsync -arzP --delete /volumeUSB1/usbshare1-2/ /volumeUSB3/usbshare3/

Wir können außerdem wie bei Unison auch bestimmte Dateien von der Synchronisation ausschließen mittels der Option –exclude. Dei option braucht dann ein Muster in Form eines regulären Ausdrucks oder eines Platzhalterszeichens, mit dem es die Dateien, die es auszuschließen gilt, finden kann.Dieses Ausschließen können wir wiederum für einige Dateien, die ebenfalls in das exclude-Muster fallen würden, überschreiben, indem wir ein exakteres Muster für diese Dateien in die Option –include einfügen.

 

Andreas Loibl ist SAP-Berater, Ethical Hacker und Online Marketing Manager und schreibt auf seinem Blog DaFRK Blog über verschiedene Themen in den Sektoren Projektmanagement, Informationstechnik, Persönlichkeitsentwicklung, Finanzen und Zeitmanagement.

DaFRK

Andreas Loibl ist SAP-Berater, Ethical Hacker und Online Marketing Manager und schreibt auf seinem Blog DaFRK Blog über verschiedene Themen in den Sektoren Projektmanagement, Informationstechnik, Persönlichkeitsentwicklung, Finanzen und Zeitmanagement.

Das könnte Dich auch interessieren...

Kommentar verfassen

This site uses Akismet to reduce spam. Learn how your comment data is processed.