IT 인프라/서버

리눅스 명령어 - Rsync 명령어 및 옵션

시큐렛 2020. 10. 23. 15:48

Rsync란?

Rsync는 Remote sync의 약자로 디렉토리나 파일들을 복사하여 동가화하여 백업용으로 주로 쓰이는 툴이다.

파일을 동가화할때 데이터를 압축하여 송수신 하기 때문에 scp보다 빠르고 파일의 변경된 내용이 있을 경우 동기화하기 때문에 효율적이다.

 

기본 사용법 및 옵션 정보 :

rsync [옵션] [원본위치] [목적지위치]
ex)
로컬 > 로컬 복사 및 동기화
rsync /home/securet/rsync_test/copyfile.txt /tmp/rsync_receive
로컬 > 원격시스템 복사 및 동기화
rsync /home/securet/rsync_test/copyfile.txt centos@192.168.137.75:/home/centos/rsync_receive
원격시스템 > 로컬 복사 및 동기화
rsync 192.168.137.75:/home/centos/rsync_receive/copyfile.txt /home/securet/rsync_test/
옵션정보 :
-v : 상세모드
-r : 하위 디렉토리 포함 전송
-c : checksum기능 사용
-p : 퍼미션 정보 유지하며 동기화
-o : 소유자 정보 유지하며 동기화
-g : 그룹 정보 유지하며 동기화
-u : 동기화할 원본보다 최신파일 일경우 동기화하지 않음

 

데이터를 로컬시스템에서 원격시스템으로 동기화 시킬 경우:

로컬시스템 : 칼리리눅스 원격시스템 : centos7

rsync 테스트를 위해 vi 편집기로 rsync_test 폴더에 txt파일로 저장한다.
rsync_test폴더에 copyfile.txt가 잘 저장된

아래 명령어를 입력하여 75번 원격시스템에 copyfile.txt를 동기화 해보자

rsync명령어 입력 및 실행

rsync /hmoe/securet/rsync_test/copyfile.txt centos@192.168.137.75:/home/centos/rsync_test

명령어 실행시 75번 서버의 centos계정의 비밀번호를 확인한다.

centos계정의 비밀번호를 입력한후 엔터를 눌러 실행시킨다.

centos의 rsync_test폴더에 안전히 전송이 된것을 확인하였다.

이제 copyfile.txt의 내용을 수정하고 다시 전송해보자

copyfile.txt파일의 내용수정
똑같이 pw를 입력한다.
파일용량이 변경되며 동기화가 잘 된것을 확인할 수 있다.