rsync: передача файлів лише в одному напрямку


21

Чи можна використовувати rsync для копіювання файлів лише в одному напрямку?

Наприклад, припустимо, що у нас є:

left/a.txt

right/a.txt

де файли спочатку однакові.

Якщо ви модифікуєте right/a.txt, то:

rsync -avv left/ right/

буде скопійовано right/a.txtна left/a.txt.

Чи можна обмежити rsync лише копіюванням з left/на right/(тобто запобігти копіюванню з right/до left/)?

Відповіді:


33

Ви неправильно розумієте rsync. Ця команда:

rsync -avv left/ right/ 

не синхронізує нічого праворуч ліворуч. Це, як говорить @atbg, буде синхронізуватися лише зліва направо. Rsync не є двонаправленим синцером. Він синхронізує dest із джерелом.

Довідкова сторінка для довідки: http://linux.die.net/man/1/rsync


Цікаво, що при експлуатації принаймні версії Mac rsync для синхронізації віддаленого каталогу через ssh це двонаправлено - наприкладrsync -avzz -e "ssh -p 2222" /source/ /target/
geotheory

4

Це повинно бути rsync [OPTION...] SRC... [DEST]таким, що воно працює в цьому напрямку (якщо ви не переключите dest і src).

left/a.txtслід скопіювати у right/a.txt:

$ echo 'left' > left/a.txt
$ echo 'right' > right/a.txt
$ cat left/a.txt && cat right/a.txt
left
right
$ rsync -avv left/ right/
sending incremental file list
delta-transmission disabled for local transfer or --whole-file
a.txt
total: matches=0  hash_hits=0  false_alarms=0 data=5

sent 95 bytes  received 34 bytes  258.00 bytes/sec
total size is 5  speedup is 0.04
$ cat left/a.txt && cat right/a.txt
left
left

Якщо є конкретні файли, які ви не хочете, щоб їх включив rsync, подивіться --exclude=PATTERNта --exclude-from=FILE.


2
І пам’ятайте, що при сумніві --dry-runопція покаже вам список файлів, які були б передані, але фактично не виконали передачу. Я додаю це до початку кожного, rsyncяк застереження, навіть якщо я впевнений, що команда правильна.
slillibri

1
Враховуючи плутанину щодо роботи rsync, можливо, варто відзначити --updateпараметр rsync , який буде пропускати (не синхронізувати) файли, які мають останній modifiedчас на стороні прийому.
Річард Майкл
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.