리눅스

rsync 명령어로 파일복사

닥치고개돌 2020. 8. 14. 02:04
728x90

rsync 명령어

기본

  • rsync : Remote Sync의 줄임말 원격 또는 로컬에 파일을 복사하는 명령어.
  • rcp 그리고 scp와 같이 원격에 파일을 복사할 때 사용하는 기본 내장 명령어입니다. 원격 컴퓨터에 파일을 전달할 수 있을뿐만 아니라 로컬에 있는 파일로 복사도 가능합니다.
  • 옵션이 정말 다양하게 많으며 많은 옵션들을 이용해 다양한 기능들을 활용할 수 있습니다.(symlink 유지, 권한 유지 그리고 파일 날짜 유지와 같은 기능들)

 

rsync의 기능상 장점들

 

  • 원격 시스템으로부터 파일을 효율적으로 복사하거나 동기화 할 수 있다.
  • Link, device, 파일의 소유자와 그룹권한등 파일의 부가정보도 복사할 수 있다.
  • scp보다 빠르다. rsync는 remote-update 프로토콜을 이용해서 차이가 있는 파일만 복사한다.  처음에는 모든 파일과 디렉토리를 복사하겠지만 다음부터는 차이가 있는 파일만 복사하기 때문에 더 빠르고 효율적으로 작동한다.
  • 데이터를 압축해서 송/수신하기 때문에 더 적은 대역폭을 사용한다.

 

옵션

  • -v : verbosity를 높이는 옵션으로 복사하는 과정을 더 자세하게 보여줍니다.
  • -z : compress를 주는 옵션으로 파일을 복사할 때 압축해서 복사합니다.
  • -h : 사람이 읽기 쉬운 형태로 복사 결과들을 출력해줍니다.
  • -a (same as -rlptgoD) : archive 모드로 -rlptgoD 옵션을 적용한것과 같습니다. 해당 옵션들은 아래서 설명하며 symlink, 권한 그리고 timestamp와 같은 속성들을 그대로 복사합는 옵션입니다.
  • -r : 디렉토리를 복사할 때 사용하는 옵션입니다.
  • -l : symlink는 symlink 형태로 복사하는 옵션입니다.
  • -p : 파일과 디렉토리들의 권한을 유지하는 옵션입니다.
  • -t : 수정시간을 유지하는 옵션입니다.
  • -g : 그룹 속성을 유지하는 옵션입니다.
  • -o : 소유자 속성을 유지하는 옵션입니다.
  • -D (same as --devices --specials) : --devices --specials)의 옵션과 같습니다.
  • --devices : root 권한이 필요하며 Device 관련된 파일들을 복사해서 생성해줍니다.
  • --specials : named socket이나 fifo와 같은 특수한 파일들도 복사하는 옵션입니다.
  • --progress : 전송 진행상황을 표시
  • --stats : 결과 보고
  • --delete : 원본 서버에 없는 파일은 백업 서버에서 삭제
  • --exclude : 제외할 파일 지정
  • --bwlimit : 대역폭(복사속도) 제어
  • --daemon : rsync를 데몬 모드로 실행
  • --max-size : 특정 크기 이상 파일 제외 (rsync 2.6.4 버전부터 추가된 옵션)
  • --min-size : 특정 크기 이하 파일 제외 (rsync 2.6.7 버전부터 추가된 옵션)

 

예제

보통 로컬에서 복사보다는 원격에서 자주 사용되기에 원격명령어만

 

 

  • 원격 파일 복사

rsync [File Name] [User]@[IP Address]:[Path]

rsync -avzh test.txt twpower-private-server:[경로]

rsync -avzh test.txt twpower@192.168.1.2:[경로]

 

 

  • 원격 폴더 복사

 

# 폴더 내 모든 파일들 복사

# rsync [Directory Name]/ [User]@[IP Address]:[Path]

 

 

rsync -avzh test_directory/ twpower-private-server:[경로]

rsync -avzh test_directory/ twpower@192.168.10.12:[경로]

728x90

'리눅스' 카테고리의 다른 글

dig 명령어 소개 및 사용방법  (0) 2020.08.31
grep 으로 중복제거 검색  (0) 2020.08.31
[LINUX] FIND 로 파일,폴더 찾기 지우기  (0) 2020.08.10
우분투 해외ip ssh차단  (0) 2020.03.10
tcpflow 사용법  (0) 2020.01.02