[[TableOfContents]] == rysnc 팁 == === root 권한 필요한 파일 동기화 할 때 === 두 가지 방법이 있다. 1. ssh root 접속 허용 하되, 키 인증만 허용 1. /etc/ssh/sshd_config 파일에서 '''PermitRootLogin without-password''' 으로 설정 1. 이렇게 설정하면 /root/.ssh/authorized_keys 에 공개키 등록된 사용자만 root 접근 가능 1. sudoer와 '''--rsync-path''' 옵션 같이 사용 1. 원격지에 접속하는 사용자에게 sudoer 등록을 해 root 권한을 사용할 수 있게 한 뒤, {{{ rsync -avz --progress --rsync-path="sudo rsync" ... }}}의 식으로 사용. 1. [http://unix.stackexchange.com/questions/92123/rsync-all-files-of-remote-machine-over-ssh-without-root-user 참고] === 원격지 디렉토리 심볼릭 링크를 유지하고 싶은 경우 === -K 옵션을 사용, -a 옵션을 쓰면 안 되기 때문에 '''-urvK''' 등으로 사용해야 한다. === 동기화할 목록을 표준 입력으로 받고 싶은 경우 === {{{--files-from}}} 옵션을 활용, {{{--files-from=-}}} 이렇게 쓰면 된다. ls /home | rsync -av --files-from=- /home /var == ssh로 rsync 할 때 포트 번호 지정하는 방법 == 2222번 포트를 사용할 경우 {{{--rsh='ssh –p2222'}}} 예를 들면 {{{rsync -avz --progress --rsh='ssh –p26' /home/ /var/}}} == rsync 속도제한 == {{{ --bwlimit=KBPS limit I/O bandwidth; KBytes per second }}} {{{rsync -avz --bwlimit=100 --progress --rsh='ssh –p22' /home/ root@kldp.org:/}}} == 인코딩이 다른 시스템끼리 동기화할 때 멀티바이트(한글) 깨지는 경우 == 인코딩을 지정해주면 됨 {{{--iconv=CONVERT_SPEC request charset conversion of filenames}}} 이 옵션은 일정 버전 이상 되어야 있음(정확한 버전은 …모르겠음) {{{rsync –av --iconv=utf-8,cp949 /home/ root@:b.com:/home/}}} 여러 개 적을 수 있다. 이 경우 utf-8을 쓰는 a.com에서 cp949를 쓰는 b.com으로 싱크를 하는 방법 (… 반대 일 수 있음) == 관련문서 == [RsyncForWindows] ---- 틀린 점이 있으면 수정 바랍니다.