공부하고

rsync는 파일 백업, 동기화 등에 사용되는 리눅스 명령어입니다.




로컬 내 폴더 동기화

rsync -avzrh /public/www /backup/www

/public/www 폴더를 /backup/www 폴더로 동기화합니다.




원격 서버 폴더를 로컬 서버로 동기화

rsync -avzrh root@123.123.123.123:/backup /backup

123.123.123.123 서버의 /backup 폴더를 로컬 내 /backup 폴더로 동기화합니다.




로컬 내 폴더 원격 서버로 동기화

rsync -avzrh /backup root@123.123.123.123:/backup

로컬내 /backup 폴더를 123.123.123.123 서버의 /backup 폴더로 동기화합니다.




자동 삭제

rsync -avzrh --delete /backup root@123.123.123.123:/backup

--delete 옵션 사용 시 소스 파일의 위치에 존재 하지 않는 파일을 삭제삽니다.




비밀번호, 포트 설정

rsync -avzrh --rsh='sshpass -p 비밀번호 ssh -p포트 -l root' 123.123.123.123:/backup /backup

접속할 서버에 22번 외 다른 포트, 비밀번호가 설정되어 있을 경우 포트("-p")와 비밀번호("-p ")를 설정할 수 있습니다. (공백 1개 차이 주의)
* sshpass를 이용하기 위해서는 sshpass를 설치해야 합니다. (yum install sshpass)




특정 확장자 제외

rsync -avzrh --exclude=".js" root@123.123.123.123:/backup /backup

js 확장자를 제외한 파일 동기화