Programowanie

rsync

rsync

Rsync (z angielskiego remote synchronization - zdalna synchronizacja) to protokół synchronizacji plików przez sieć. Zwykłe systemy przesyłania różnic (takie jak popularny diff/patch) wymagają istnienia obu wersji po jednej stronie, na podstawie których tworzona jest lista różnic a następnie przesyłana przez sieć. Rsync działa w odmienny sposób - przez sieć wysyłany jest spis plików z hashami bloków (zwykle ok. 1 kB), po czym na drugiej maszynie program sprawdza, które z fragmentów już posiada. Daje to bardzo dobre rezultaty i umożliwia radzenie sobie z sytuacjami, które dla patch/diff byłyby trudne do realizacji, jak przeniesienia plików.

Rsync umożliwia też dostęp na bieżąco, w przeciwieństwie do "raz na dzień" w przypadku patch/diff.

[edytuj] Przykład

rsync --progress --delete -axtrDHl /home/ /mnt/raid/home/

uaktualnia katalog /mnt/raid/home/ zawartością /home/ z wiernym zachowaniem dowiązań, praw itp. Wywołanie używane np. do przenoszenia zawartości partycji.

[edytuj] Zobacz też

[edytuj] Linki zewnętrzne