rsync

2021년 6월 7일 수정

rsync 소개

rsync는 remote sync의 약자로 두 원격지의 디렉터리를 동기화 하는데 사용하는 CLI 도구다.

그냥 복사만 하는 것이 아니라 효율적으로 전송하기 위해 압축 기술을 사용한다. 타임스탬프를 활용해 이후에 수정된 파일만 복사하거나 혹은 체크섬을 활용해 변경된 파일만 복제하는 것도 허용한다.

원격지라는 표현은 로컬와 원격 서버를 모두 포함하는 개념이다. 따라서 두 디렉터리를 동기화하는 것도 가능하다.

리눅스를 비롯한 *NIX 운영체제에서 대체로 기본 제공되며 macOS에서도 별 다른 설치 없이 사용할 수 있다.

간단한 사용법 정리

rsync -options source-dir/ destination-dir

대표적인 옵션만 뽑아보자:

  • -a 혹은 --archive: Archive Mode. 메타데이터 완전 복제 모드
  • -u: 시간 비교 모드. 수정된 파일만 복사할 때 유용
  • -r: 재귀(Recursive) 복사 모드. 하위 디렉터리를 모두 복사할 때 유용
  • -l: 심볼릭 링크를 일반 파일로 취급. 웹사이트를 백업할 때 유용
  • -L 혹은 --copy-links: 심볼릭 링크를 일반 파일이나 디렉터리로 취급. 일반적인 백업 용도로 유용