본문 바로가기

리눅스

[리눅스] rsync 설정하기

반응형

1. rsnyc란?

 원격으로 파일과 디렉토리( /data 등) 을 복사하고 동기화하기 위해 사용하는 네트워크 프로토콜.

서버간 사용자가 원하는 특정 디렌토리 및 파일을 동기화해 준다.  rsync는 수정된 부분만 비교해서 옮겨준다

 

 

2. rsync 서버

 

1) 패키지 확인

# rpm -qa | grep rsync

# rpm -qa | grep xinetd

 

2) 패키지 설치

# yum install xinetd rsync

 

3) rsnyc 사용 설정

 

#vi /etc/xinetd.d/rsnyc   (없으면 생성 후 내용 추가)

disable = yes  → disable = no 로 변경

# default: off
# description: The rsync server is a good addition to an ftp server, as it \
#       allows crc checksumming etc.

service rsync
{
        disable = no
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/bin/rsync
        server_args     = --daemon
        log_on_failure  += USERID
}

 

 

4) rsync 설정

# vi /etc/rsyncd.conf  (없으면 생성)

[rsync_test]                      -> 사용할 rsync 서비스 이름
path=/data/rsync_test/            -> 데이터 원본 경로
comment = rsync_test              -> 코멘트
uid = root                        -> 권한 사용자
gid = root                        -> 권한 그룹
use chroot = yes
read only = yes
hosts allow = 192.168.100.20     -> rsync 클라이언트 IP. localhost일 경우 입력하지 않아도 됨
max connections = 3
timeout=600

5) iptables 설정

# vi /etc/sysconfig/iptables

873번 포트 추가

 

-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 873 -j ACCEPT

 

6) 서비스 재시작

 

# systemctl restart rsync

 

3. rsync 클라이언트

 

 

1) 패키지 확인

# rpm -qa | grep rsync

# rpm -qa | grep xinetd

 

2) 패키지 설치

# yum install rsync

 

3) rsync 서버 접속

# rsync -avz [IP]::[서비스명] 저장디렉토리

# rsync -avz 192.168.100.10::rsync_test /data/rsync_test

4. 테스트

1) 클라이언트

# cd /data/rsync_test (없으면 디렉토리 생성)

# ls 

2) 서버

# cd /data/rsync_test (없으면 디렉토리 생성)

# touch a

 

3) 클라이언트

 

파일이 생긴것을 확인!