Rsync
rsync는 컴퓨터 시스템 상에서 파일을 효율적으로 전송하고 동기화하기 위한 유틸리티의 하나로, 파일의 타임스탬프와 크기를 검사함으로써 이루어진다. 파일 동기화와 파일 전송 프로그램으로 유닉스 계열 시스템과 함수에서 흔히 볼 수 있다. rsync 알고리즘은 델타 인코딩의 일종이며 네트워크 이용률을 최소화하기 위해 사용된다. Zlib을 사용하여 추가적인 데이터 압축을 하는데 사용할 수 있으며, SSH이나 stunnel은 데이터 보안을 위해 사용할 수 있다.
Rsync는 일반적으로 서로 다른 두 개의 시스템 간에 파일과 디렉터리를 동기화하기 위해 사용된다.
이를테면 rsync local-file user@remote-host:remote-file
를 사용하면 rsync는 SSH를 사용하여 user 자격으로 remote-host에 접속하게 된다.
연결이 되면 원격 호스트의 rsync를 호출한 다음 두 개의 프로그램이 전송이 필요한 로컬 파일의 일부를 결정함으로써 원격 파일이 로컬 파일과 일치할 수 있게 된다.
Rsync는 데몬 모드로도 동작이 가능하며 네이티브 rsync 프로토콜로 파일을 서비스하고 수신할 수 있다. (rsync://
문법 사용).
GNU GPLv3로 배포되었다.
Flags
- a - 퍼미션 소유주 및 위치까지 그대로 가져오는 Archive
- v - 동기화 상세 진행사항을 보여주는 Verbose
- r - 지정한 디렉터리의 하위 디렉터리까지 재귀적으로 실행하는 Recursive
- p - 원본 파일 시간의 수정시간, 권한 등의 정보를 보존하는 Perms
- z - 데이터를 압축 전송하는 Compress 옵션 등이 있습니다.
See also
- cron
- syncthing
- CDC File Transfer - 윈도우 to 리눅스 파일 동기화 및 스트리밍 도구
- Jamsync - rsync기반의 버전 컨트롤 시스템
- ssh
- sftp
- OpenSSH
- scp
- rsync
- rclone
- Robocopy - Windows용 견고한 파일 복사