서버(마스터:파일을 제공) 설정
rsync와 xinetd 설치 유무를 확인하고 없으면 설치한다.
$ rpm -qa | grep rsync
$ rpm -qa | grep xinetd
# 없다면 설치
$ yum install -y rsync
$ yum install -y xinetd
rsync를 xinetd에서 실행시키기 위한 설정.
...
service rsync
{
disable = no # yes > no로 수정
socket_type = stream
...
}
rsyncd 설정 파일 생성.
각각의 서비스에 대한 프로필을 만든다.
[update] # 서비스명. 임의로 정한다.
path = /home/update # 백업할 경로
comment = update.com img file
uid = root
gid = root
use chroot = yes
read only = yes
hosts allow = 111.60.215.6,111.60.215.7 # 접속을 허용할 클라이언트 ip
max connections = 2
timeout = 100 # 필요 없으면 삭제
xinetd 재시작 후 873 포트 오픈 확인.
$ service xinetd restart
$ netstat -nlp | grep LISTEN
클라이언트(파일을 가져옴) 설정
서버와 마찬가지로 rsync가 없으면 설치하고, 서버에서 생성한 서비스명으로 요청한다.
정상적으로 파일이 받아진다면 crontab에 스케줄링 설정하여 주기적으로 동기화한다.
rsync 옵션 서버ip::서비스명 백업디렉토리
$ rsync -avzrt 111.60.215.5::update /home/update
rsync 옵션 설명
옵션 | 설명 |
-a | archive mode 심볼릭 링크, 속성, 퍼미션, 소유권등을 보존한다. |
-v | verbose 진행상황을 상세하게 보여준다. |
-z | compress 전송시 압축을 수행한다. |
-r | recursive(하위 디렉토리까지 포함). |
-t | 변경시간 전송(이것이 없으면 전송한 시간으로 바뀜). |
-u | update only 새로운 파일을 덮어쓰지 않는다. |
-e | 복사를 위한 원격 접속 쉘 프로그램을 설정한다. |
-delete | 서버측에 없고 클라이언트측에만 있는 파일을 지운다. |
'서버&시스템 > Linux' 카테고리의 다른 글
ssh, scp, rsync 패스워드 없이 접속 (0) | 2013.01.24 |
---|---|
yum 실행 시 Error: rpmdb open failed (1) | 2013.01.09 |
vsftpd 설치, 설정 (0) | 2012.11.16 |
Error: Cannot retrieve repository metadata ( repomd.xml) for respository (0) | 2012.07.25 |
mysql 5.1.32 소스 설치 중 오류 (0) | 2012.07.25 |