답변:
당신은 rsync를 오해합니다. 이 명령은
rsync -avv left/ right/
오른쪽에서 왼쪽으로 아무것도 동기화하지 않습니다. @atbg가 말했듯이 왼쪽에서 오른쪽으로 만 동기화됩니다. Rsync는 양방향 동기화 장치가 아닙니다. 대상과 원본을 동기화합니다.
참조 용 매뉴얼 페이지 : 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
옵션에 주목할 가치가 있습니다 .rsync의 옵션 modified
은 수신 측에서 더 최근 시간 을 가진 파일을 건너 뛸 (동기화하지 않음) 것 입니다.
rsync -avzz -e "ssh -p 2222" /source/ /target/