man rsync 의 USAGE 만 번역

rcp 사용법과 유사합니다. 반드시 대상과 목적지를 적어야 하며 둘 중 하나는 원격일 수 있습니다.
아마도 설명하기 가장 좋은 방법은 아래의 예를 드는 것일 겁니다.

rsync -t *.c foo:src/

이 예제는 *.c 패턴과 일치하는 모든 파일을 현재의 디렉토리로 부터 foo 머신으로 전송합니다.
원격 시스템에 이미 같은 파일이 존재한다면 rsync remote-update 프로토콜은 비교해서 같은 파일은 전송하지 않습니다. 좀 더 자세하게 다음 예제를 보죠.

rsync -avz foo:src/bar /data/tmp

이 방법은 재귀적으로 foo머신에 src/bar 디렉토리의 모든 파일을 로컬머신의 /data/tmp/bar 디렉토리로 전송합니다. 파일들은 "archive" 모드로 전송이 됩니다. 이것은 링크, 장치, 속성, 허가, 소유자, 기타. 등등이 전송에 보장이 됩니다. 추가적으로, 압축은 전송 데이터 크기를 줄여주는데 사용이 되어 집니다.

rsync -avz foo:src/bar/ /data/tmp

대상위치에 붙은 /  는 "이름으로 디렉토리를 복사"가 아닌 "이 디렉토리의 내용물을 복사"라는 의미로 사용됩니다.

rsync -av /src/goo /dest
rsync -av /src/foo/ /dest/foo

한마디로 위에 2개의 의미가 같다는 뜻입니다.

또한 명심할 것은, 호스트와 모듈 참조는 디렉토리 뒤에 / 표시를 필요로 하지 않습니다.
예를 들면, 아래방법 둘 모두 원격 디렉토리의 내용물을 "/dest"에 복사합니다.

rsync -av host: /dest
rsync -av host::module /dest

물론 로컬전용 모드로 rsync를 사용할 수도 있습니다. ':' 표시가 필요하지 않겠죠.
이경우는 마치 향상된 copy 명령어로 행동합니다.


번역이 개판이네 ㅠ,,,, 다듬어야지 ㅠ

+ Recent posts