回答:
rsyncを誤解しています。このコマンド:
rsync -avv left/ right/
右から左に何も同期しません。@atbgが言うように、左から右にのみ同期します。Rsyncは双方向の同期機能ではありません。destとソースを同期します。
参照用のmanページ:http : //linux.die.net/man/1/rsync
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
。
--dry-run
転送されたはずのファイルのリストが表示されますが、実際には転送は実行されません。rsync
コマンドが正しいと確信している場合でも、予防措置としてこれをすべての先頭に追加します。
--update
オプションに注意する価値があります。これはmodified
、受信側で最近の時間があるファイルをスキップ(同期ではなく)します。
rsync -avzz -e "ssh -p 2222" /source/ /target/