Linux의 Rsync 명령 및 예제

Linux의 Rsync 명령 및 예제

2022-06-01 last update

7 minutes reading rsync terminal
rsync는 원격 셸을 통해 두 위치 간에 파일과 디렉터리를 동기화하거나 원격 Rsync 데몬에서 파일과 디렉터리를 동기화하는 데 사용되는 빠르고 일반적인 명령행 유틸리티입니다.이것은 원본과 목표 사이의 차이만 전송하여 빠른 증량 파일 전송을 제공한다.Rsync는 데이터 미러링, 증분 백업, 시스템 간 파일 복사 및 대체 가능 scp
, sftp
, 및 cp
명령.본고는 실례와 가장 흔히 볼 수 있는 rsync 옵션에 대한 상세한 설명을 통해 어떻게 사용하는지 설명한다rsync.

Rsync 설치

대부분의 Linux 버전과 macOS에 유틸리티가 사전 설치되어 있습니다.시스템에 설치되지 않은 경우rsync 릴리스 패키지 관리자를 사용하여 쉽게 설치할 수 있습니다.

Ubuntu 및 Debian에 Rsync 설치

sudo apt install rsync

CentOS 및 Fedora에 Rsync 설치

sudo yum install rsync

Rsync 명령 구문

명령을 어떻게 사용하는지 토론하기 전에 기본 문법을 되돌아봅시다.rsync 실용적 표현식은 다음과 같은 형식을 사용한다.
Local to Local:  rsync [OPTION]... [SRC]... DEST
Local to Remote: rsync [OPTION]... [SRC]... [[email protected]]HOST:DEST
Remote to Local: rsync [OPTION]... [[email protected]]HOST:SRC... [DEST]
  • rsync-Thersync options
    .
  • rsync - 소스 디렉토리입니다.
  • OPTION - 대상 디렉토리입니다.
  • SRC - 원격 사용자 이름입니다.
  • DEST - 원격 호스트 이름 또는 IP 주소.
  • USER는 명령 동작을 제어하는 많은 옵션을 제공합니다.가장 광범위하게 사용되는 옵션은
  • HOST,rsync, 아카이브 모드-a입니다.이 옵션은 동기화 디렉터리 귀속, 특수 전송 및 차단 장치, 기호 링크 유지, 수정 시간, 그룹, 소유권 및 권한을 알려줍니다.
  • --archive , -rlptgoD . 이 옵션은 데이터가 대상 컴퓨터로 전송될 때 데이터를 압축하도록 합니다.이 옵션은 원격 컴퓨터와의 연결 속도가 느린 경우에만 사용됩니다.
  • rsync, 해당-z.이 옵션을 사용하면 --compress 전송 과정에서 진행 표시줄을 표시하고 전송된 파일의 일부를 보존합니다.느리거나 불안정한 네트워크 연결을 통해 대형 파일을 전송할 때 매우 유용하다.
  • rsync . 이 옵션을 사용하면 -P 대상 위치에서 무관한 파일을 삭제합니다.미러링에 유용합니다.
  • --partial --progress , rsync . 오류가 아닌 메시지를 억제하려면 이 옵션을 사용하십시오.
  • --delete . 이 옵션을 사용하면 다른 원격 셸을 선택할 수 있습니다.기본적으로 rsync 은 ssh를 사용하도록 설정되어 있습니다.
  • Rsync 기본 사용 방법

    -q의 가장 기본적인 용례는 하나의 파일을 한 로컬 위치에서 다른 로컬 위치로 복사하는 것이다.다음은 예입니다.
    rsync -a /opt/filename.zip /tmp/
    명령을 실행하는 사용자는 원본 위치에 대한 읽기 권한과 대상 위치에 대한 쓰기 권한을 가져야 합니다.대상 위치에서 파일 이름을 생략하고 현재 이름으로 파일을 복사합니다.다른 이름으로 파일을 저장하려면 대상 섹션에 새 이름을 지정합니다:
    rsync -a /opt/filename.zip /tmp/newfilename.zip
    디렉터리를 동기화할 때 --quiet 의 실제 역할입니다.다음 예는 사이트 파일의 로컬 백업을 만드는 방법을 보여 줍니다.
    rsync -a /var/www/domain.com/public_html/ /var/www/domain.com/public_html_backup/
    대상 디렉터리가 존재하지 않으면 -e 생성합니다.특히 rsync 은 꼬리 슬래시(rsync를 사용하여 원본 디렉터리를 다르게 처리했다.소스 디렉토리에 끝 슬래시가 있는 경우 명령은 디렉토리 컨텐트만 대상 디렉토리로 복사합니다.끝 슬래시를 생략하면 rsync 소스 디렉토리를 대상 디렉토리로 복사합니다.

    rsync를 사용하여 원격 컴퓨터와 데이터 동기화

    사용rsync~transfer data remotely
    원본 컴퓨터와 대상 컴퓨터에 동시에 설치해야 합니다./의 새 버전은 SSH를 기본 원격 셸로 사용하도록 구성됩니다.다음 예제에서 로컬 컴퓨터에서 원격 컴퓨터로 디렉토리를 전송하고 있습니다.
    rsync -a /opt/media/ [email protected]_host_or_ip:/opt/media/
    설정되지 않은 경우passwordless SSH login
    원격 컴퓨터의 경우 사용자 암호를 입력해야 합니다.원격 컴퓨터에서 로컬 컴퓨터로 데이터를 전송하려면 원격 위치를 소스로 사용하십시오:
    rsync -a [email protected]_host_or_ip:/opt/media/ /opt/media/
    원격 호스트의 SSH가 기본 22 이외의 포트를 탐색하는 경우 rsync 옵션을 사용하여 포트를 지정하십시오:
    rsync -a -e "ssh -p 2322" /opt/media/ [email protected]_host_or_ip:/opt/media/
    대량의 데이터를 전송하는 경우 screen 에서 실행하는 것이 좋습니다 rsync 명령
    세션 또는 사용rsync 옵션:
    rsync -a -P re[email protected]_host_or_ip:/opt/media/ /opt/media/

    파일 및 디렉토리 제외

    파일과 디렉터리를 배제할 수 있는 두 가지 옵션이 있습니다.첫 번째 옵션은 rsync 매개 변수를 사용하고 명령줄에서 제외할 파일과 디렉터리를 지정하는 것입니다.(adsbygoogle=window.adsbygoogle | |[]).푸시({});시간excluding files or directories
    , 소스 위치로의 상대 경로를 사용해야 합니다.다음 예에서는 -ersync 디렉토리를 제외하는 방법을 보여 줍니다.
    rsync -a --exclude=node_modules --exclude=tmp /src_directory/ /dst_directory/
    두 번째 옵션은 -P 옵션을 사용하고 파일에서 제외할 파일과 디렉토리를 지정하는 것입니다.
    rsync -a --exclude-from='/exclude-file.txt' /src_directory/ /dst_directory/
    /파일 제외.txt
    node_modules
    tmp
    

    결론

    는 Rsync를 사용하여 파일과 디렉터리를 복사하고 동기화하는 방법을 보여 줍니다.Rsync에 대한 자세한 내용은 전화Rsync User’s Manual로 문의하십시오.
    페이지질문이 있으시면 언제든지 논평을 주십시오.