Rsync Command
    • PDF

    Rsync Command

    • PDF

    Article Summary

    Classic/VPC 환경에서 이용 가능합니다.

    rsync는 원격 또는 로컬 시스템 간에 파일 및 디렉터리를 동기화하고 백업하는데 사용되는 유틸리티입니다.

    주의

    rsync를 사용하여 데이터를 동기화하려면 네트워크의 연결 상태이 안정적으로 유지되어야 합니다. Source VM에서 Target VM으로 연결된 네트워크의 연결 상태가 불안정할 경우, 데이터 전송에 실패할 수 있습니다. 이를 방지하려면 다음 항목을 참고하여 네트워크 연결 상태를 사전에 확인해 주십시오.

    • ACG 및 Network ACL에서 필요한 IP 대역, 포트 및 프로토콜에 대한 인바운드 및 아웃바운드 규칙을 Target VM과 Source VM 간의 rsync 트래픽이 허용되도록 설정해 주십시오.
    • VPC 환경에서 외부 통신이 필요한 경우, 다음의 조건에 해당 되는지 확인해 주십시오.
      • Public Subnet: IGW 구성 및 공인 IP가 할당된 경우
      • Private Subnet: NAT Gateway 구성된 경우
    • 대량의 데이터를 복사하려면 네트워크 대역폭이 충분해야 합니다. Target VM과 Source VM 간의 네트워크 대역폭이 충분하지 않으면, 데이터 전송 속도가 느려질 수 있습니다. 이를 방지하려면 rsync 명령어에 --bwlimit 옵션을 추가하여 대역폭 제한을 설정해 주십시오.
    참고

    rsync를 사용하여 데이터를 동기화하는 도중에 오류가 발생하는 것을 방지하기 위해 사전에 백업을 수행하는 것을 권장합니다.

    rsync를 사용하여 VM 간에 데이터를 동기화하는 방법은 다음과 같습니다.

    1. Source VM과 Target VM에 rsync 패키지가 설치되어 있는지 확인해 주십시오.
      • rsync 패키지가 설치되어 있다면 다음과 같이 버전 정보가 출력됩니다.
        # rsync --version
        rsync  version 3.1.3  protocol version 31
        Copyright (C) 1996-2018 by Andrew Tridgell, Wayne Davison, and others.
        Web site: http://rsync.samba.org/
        Capabilities:
           64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,
           socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
          append, ACLs, xattrs, iconv, symtimes, prealloc
        
        rsync comes with ABSOLUTELY NO WARRANTY.  This is free software, and you
        are welcome to redistribute it under certain conditions.  See the GNU
        General Public Licence for details.
        
    2. 설치가 되어있지 않은 경우, OS별 명령어를 입력하여 rsync 패키지를 설치해 주십시오.
      • CentOS/Rocky Linux
        # yum install rsync
        
      • Ubuntu
        # apt-get install rsync
        
    3. rsync를 사용하여 데이터를 복사하기 전에 Target VM의 포트 설정을 확인해 주십시오.
      참고

      방화벽의 설정에 따라 rsync 연결이 차단될 수 있으므로, 필요한 포트가 열려있는지 확인하고 필요에 따라 방화벽 설정을 변경해 주십시오.

      • rsync는 기본적으로 통신에 TCP 포트 873을 사용합니다. 원격 호스트에 연결할 경우, 포트 873이 방화벽이나 네트워크 제한으로 차단되지 않았는지 확인해 주십시오.
        ## telnet command
        # telnet [IP_ADDRESS] 873
        
        ## nmap command
        # nmap -p 873 [IP_ADDRESS]
        
      • rsync 통신에 다른 포트를 사용해야 할 경우, -e 옵션을 사용하여 해당 원격 쉘 명령어를 지정할 수 있습니다.
        <예시> 포트 2222를 사용하는 명령어
        # rsync -e 'ssh -p 2222' /source_dir username@destination:/destination_dir
        
    4. 데이터를 전송할 Source VM에서 rsync 명령어를 실행해 주십시오.
      • 필요에 따라 명령어의 옵션을 조정하여 데이터 전송을 최적화할 수 있습니다.
      • <예시> 데이터를 동기화하는 명령어
        # rsync -avz --progress --bwlimit=10000 /source_dir username@destination:/destination_dir
        
        • /source_dir: 동기화하려는 데이터의 경로
        • username: Target 서버에 로그인하는 데 사용되는 사용자 이름
        • destination: Target 서버의 IP 주소 또는 도메인 이름
        • 해당 예시에서 사용하는 옵션은 다음과 같습니다.
          • -a: 아카이브 모드를 사용하여 모든 파일 속성 보존
          • -v: 상세한 출력 표시
          • -z: 압축을 사용하여 전송 시간 단축
          • --process: 전송 상황 표시
          • --bwlimit: 파일을 복사하거나 동기화할 때 대역폭 제한 설정
            • 해당 예시에서는 rsync가 사용할 수 있는 최대 대역폭을 10,000 KB/s로 제한합니다.
          • /source_dir: 전송할 소스 디렉터리
          • username@destination:/destination_dir: 전송할 Target VM의 IP 주소나 호스트 이름, 사용자 이름 및 Target 디렉터리 경로
    5. rsync가 Target VM으로 데이터를 복사하는 동안 진행 상황을 모니터링해 주십시오.
      • 복사가 완료되면 Target VM에서 새로운 데이터가 동기화된 것을 확인할 수 있습니다.

    이 문서가 도움이 되었습니까?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.