rsync "플립" 기능 [닫기]

rsync "플립" 기능 [닫기]

나는 원본 버전과 "뒤집힌" 버전이 있는 예제 쌍을 발견했습니다.

원래

rsync -aHAXxv --numeric-ids --delete --progress -e "ssh -T -c arcfour -o Compression=no -x" user@<source>:<source_dir> <dest_dir>

"튀기다"

rsync -aHAXxv --numeric-ids --delete --progress -e "ssh -T -c arcfour -o Compression=no -x" [source_dir] [dest_host:/dest_dir]

이것최종 견적까지 마찬가지인 것 같습니다.

"flip"이라고 표시된 두 번째 예는 무엇입니까? "원본"과 기능적으로 어떻게 다른가요? 이 두 명령은 기능적으로 동일합니까?

답변1

원저자가 엉성하게 썼는데, 그 부분에서 일부를 생략하셨네요.

그가 썼다:

rsync ... user@<source>:<source_dir> <dest_dir>

rsync ... [source_dir] [dest_host:/dest_dir]

그러나 다음과 같이 작성하는 것이 좋습니다.

rsync ... user@<source_host>:<source_dir> <dest_dir>

rsync ... <source_dir> user@<dest_host>:<dest_dir>

그러면 "뒤집기"가 더 분명해질 것입니다.

기본적으로 첫 번째 형식은 원격 "소스" 호스트에서 로컬 "대상" 호스트로 파일을 "풀"하고, 두 번째 형식은 로컬 소스에서 원격 대상으로 파일을 "푸시"합니다. 그는 어느 것이 더 빠른지는 언급하지 않았습니다.

나는 또한 그가 -z 옵션을 생략한 것이 잘못되었다고 생각합니다. 나는 항상 그것을 사용하고 놀라운 속도 향상을 얻습니다.

우리를 현학적이라고 부르세요. 그러나 다음과 같이 할 수도 있습니다:

rsync ... <source_dir> <dest_dir>

rsync ... user@<source_host>:<source_dir> user@<dest_host>:<dest_dir>

첫 번째는 단지 로컬 복사본입니다. 등에서 원하는 옵션이 없으면 cp사용할 수 있습니다 . ditto두 번째 형식을 사용하면 두 원격 서버 간에 파일을 복사할 수 있습니다.

마지막으로 만약 우리가진짜현명하게 말하면 -AX 매개변수는 Linux AFAICT에서만 작동합니다.

관련 정보