Verzeichnisse in beide Richtungen mit rsync synchronisieren


25

Ich kenne rsyn und synchronisiere mit rsync zwischen meinem Mac und einem Linux-Server wie folgt.

rsync -r -t -v MAC LINUX
rsync -r -t -v LINUX MAC

Ich hatte erwartet, den ersten Befehl zum Synchronisieren auszuführen, aber ich brauchte den zweiten Befehl auch, wenn eine Änderung in LINUX vorgenommen wurde.

Vermisse ich etwas? Hat rsync eine Option zum Synchronisieren zwischen zwei Verzeichnissen?

Antworten:


20

Sie möchten eine bidirektionale Synchronisierung. Schauen Sie sich unisono, die dies tut: http://www.cis.upenn.edu/~bcpierce/unison/

Zum Beispiel unter Debian / Ubuntu:

$ sudo apt-get install unison
$ unison MAC/ LINUX/

Wenn Sie Probleme mit Berechtigungen haben (Beispiel ext4 -> FAT):

$ unison -perms 0 vlc-2.2.0/ /media/sf_vlc/vlc
Contacting server...
Looking for changes
Reconciling changes

vlc-2.2.0      vlc                
new dir  ---->            /  [f] 

Proceed with propagating updates? [] y
Propagating updates

12

rsync wird von den Entwicklern nicht für die bidirektionale Synchronisierung empfohlen . Das bereits empfohlene Dienstprogramm unison ist eine bessere Lösung für Sie.

Denken Sie auch daran, dass Sie bei der Verwendung von rsync wahrscheinlich mit vielen Mac-spezifischen HFS + -Inhalten zu tun haben. Verwenden Sie daher unbedingt ein ordnungsgemäß gepatchtes rsync3 auf dem Mac oder erwarten Sie Probleme mit Änderungsdaten (wenn Sie das von Mac OS X bereitgestellte rsync 2.6.9 verwenden). Wenn Sie nicht wissen, wie Sie ein ordnungsgemäß gepatchtes rsync 3 für den Mac erstellen, Holen Sie sich mlbackup, das genau das beinhaltet. (Vollständige Offenlegung: Ich bin der Autor von mlbackup.) Laden Sie es von github herunter und stellen Sie sicher, dass Sie das vollständige Paket von den Downloads herunterladen. (Das mlbackup-Repo enthält nicht rsync 3, das Sie in diesem Fall benötigen.) Http://github.com/MacLemon/mlbackup


5
Ein Link zur Nichtempfehlung durch rsync-Entwickler wäre nett.
Wildcard

@Wildcard nicht von den Entwicklern, aber das ist relevant.
Ploni

4

Sie sollten sich auch csync ansehen , das Open Source ist und native bidirektionale Synchronisierung bietet.

Zu Ihrer Information - soweit ich weiß - wird csync von Leuten aus dem Samba-Team entwickelt. Und da ich weiß, dass das Samba-Team auch rsync entwickelt hat, verstehe ich dies als Qualitätsmerkmal.



Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.