Synchronizowanie katalogów w obu kierunkach z rsync

25

Zdarza mi się wiedzieć o rsyn i używam rsync do synchronizacji między moim komputerem Mac a serwerem Linux w następujący sposób.

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

Spodziewałem się, że uruchomię pierwsze polecenie, aby zsynchronizować, ale potrzebowałem drugiego polecenia również po zmianie w systemie LINUX.

Czy coś brakuje? Czy rsync ma opcję synchronizacji między dwoma katalogami?

prosseek
źródło

Odpowiedzi:

20

Chcesz synchronizacji dwukierunkowej. Spójrz na unison, który robi to: http://www.cis.upenn.edu/~bcpierce/unison/

Na przykład na Debian / Ubuntu:

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

Jeśli masz problemy z uprawnieniami (przykład 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
jmtd
źródło
12

rsync w rzeczywistości nie jest zalecany do synchronizacji dwukierunkowej (przez jego twórców). Zalecane już narzędzie unison będzie dla Ciebie lepszym rozwiązaniem.

Należy również pamiętać, że prawdopodobnie podczas korzystania z rsync prawdopodobnie masz do czynienia z wieloma specyficznymi dla komputerów Mac funkcjami HFS +. Więc upewnij się, że używasz poprawnie załatanego rsync3 na Macu lub oczekujesz problemów z datami modyfikacji (w przypadku korzystania z Mac OS X pod warunkiem rsync 2.6.9.) Jeśli nie wiesz, jak zbudować poprawnie załatany rsync 3 dla Maca, pobierz mlbackup, który obejmuje właśnie to. (Pełne ujawnienie: jestem autorem mlbackup.) Pobierz go z github i pobierz pełną paczkę z pobranych plików. (The mlbackup repo nie obejmuje rsync 3, które chcesz w tym przypadku). Http://github.com/MacLemon/mlbackup

MacLemon
źródło
5
Przydałby się link do niezalecania programistów rsync.
Wildcard
@Wildcard nie od deweloperów, ale to jest istotne.
Ploni
4

Powinieneś także spojrzeć na csync , który jest open source i oferuje natywną dwukierunkową synchronizację.

FYI - o ile mi wiadomo - csync jest rozwijany przez ludzi z zespołu Samby. I wiedząc, że zespół Samby również opracował rsync, traktuję to jako znak jakości.

maksymalny
źródło
2

Kolejne doskonałe narzędzie do synchronizacji dwukierunkowej ..... freefilesync

rsjethani
źródło
4
na Stack Exchange wolimy odpowiedzi, które są czymś więcej niż tylko linkami. byłoby wspaniale, gdybyś mógł trochę rozwinąć to, co to jest (co go odróżnia unison?)
strugee