rsync는 동일한 호스트 백업 내에서 백업에 사용할 수 있는 빠른 증분 파일 전송 도구입니다. 또한 이를 다른 호스트에 대한 네트워크 백업 도구로 사용할 수도 있습니다. 이 문서에서는 주로 파일 전송, 백업 및 미러링을 달성하기 위해 자체 rsync 서버를 설정하는 방법을 설명합니다. tar 및 wget과 비교하여 rsync에는 빠르고 안전하며 효율적이라는 장점도 있습니다.
수동:
먼저, 두 서버 사이에 공개키와 키를 설정해야 매번 비밀번호를 입력할 필요가 없고 자동화될 수 있다.
먼저 rpm -qa |grep rsync를 사용하여 rsync가 설치되었는지 확인할 수 있습니다. 소프트웨어 다운로드를 위한 Rysnc 홈페이지 주소는 http://rsync.samba.org/ 입니다.
본 실험의 테스트 환경 (2개 유닛, 1개 서버 및 1개 클라이언트)
rsync 서버 IP: 192.168.48.60
rsync 클라이언트 IP: 192.168.48.148
-------------------------------------
먼저 서버 측을 구성하십시오.
1. rsync 패키지 설치
# rpm -q rsync
rsync-2.6.3-1
2. rsync는 /etc/rsyncd.conf라는 하나의 구성 파일만 사용합니다. 이 파일은 일반적으로 존재하지 않으므로 직접 생성하세요.
# vi /etc/rsyncd.conf
uid = 아무도
기드 = 아무도
최대 연결 = 200
시간 초과=600
chroot 사용=아니요
읽기 전용=예
pid 파일=/var/run/rsyncd.pid
host_allow =192.168.48.148 //클라이언트의 IP 주소가 여기에 기록됩니다
#syslog 시설 = local7
#로그 파일=/var/log/rsyncd.log
#rsyncconfig
#'표준적인' 것들
[rsync_gmmold] //동기화 경로 정의(클라이언트는 이 키워드를 사용하여 연결)
path = /home //동기화가 필요한 경로
comment = gmmold //아직 모릅니다.
3. 서비스 시작
#/usr/bin/rsync --daemon 마지막으로 서버 측에서 rsync를 데몬으로 시작합니다. rsync가 시작한 포트는 포트 873입니다.
4. 부팅 시작 추가
echo "/usr/bin/rsync --daemon" >> /etc/rc.local
5. rsync가 언제 시작되는지 확인
# ps -ef |
6. 서비스 중지
#kill `cat /var/run/rsyncd.pid`
클라이언트 구성은 다음과 같습니다.
1. rsync 패키지 설치
[root@rhel403 old]# rpm -q rsync
rsync-2.6.3-1
2. 서버와 동기화:
#rsync -ave ssh [email protected]:/home/ /home/ganfic/laji/ //60 머신의 /home 아래에 있는 파일을 /home/ganfic/laji/에 동기화하고 백업합니다.
백업을 자동으로 동기화합니다.
1. tmp 아래에 b.sh 파일을 만듭니다.
#vi /tmp/b.sh
안에 다음 내용을 작성하세요.
#!bin/sh
rsync -ave ssh [email protected]:/home/ /home/ganfic/laji/
:wq
2 두 번째 단계에는 crontab이 포함됩니다. 명령줄에 입력하세요.
#crontab -e
그런 다음 * * * * * sh /tmp/b.sh //* * * * * 부분을 넣어 각 분을 나타내고 sh /tmp/b.sh는 b.sh 스크립트를 실행한다는 의미입니다(아래에 설명을 추가하겠습니다). ), -e 환경 변수 EDITOR 또는 RVISUAL로 지정된 편집기를 사용하여 crontab 파일을 편집합니다. 새로 생성된 crontab 파일은 /var/spool/cron 디렉터리에 저장됩니다. 파일 이름은 사용자 이름입니다. cd /var/spool/cron을 사용하면 사용자 파일이 표시되고 vi 루트를 사용합니다. am은 루트 사용자입니다) ) 그러면 * * * * * sh /tmp/b.sh가 여기로 전송된 것을 볼 수 있습니다.
이제 실행 중인지 확인해야 합니다. 로그 파일은 #vi /var/log/cron에 있으며 자동을 사용하기 전에도 확인할 수 있습니다. 실행 중인데, 당시에는 60 머신의 /home 디렉토리에 있는 파일도 복사되었는데, 로컬 머신의 /home/ganfic/laji 폴더에 들어가면 알 수 있습니다. 60 머신의 /home 디렉터리에서 해당 콘텐츠를 모두 삭제한 후 콘텐츠가 다시 추가되는지 확인하기 위해 1분 정도 기다리면 성공한 것입니다.
Linux 방화벽은 iptables를 사용하므로 정의한 rsync 서버 포트가 최소한 서버 측과 클라이언트 측에서 통과하도록 허용해야 합니다.
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 873 -j ACCEPT
rsync 서비스를 시작합니다:
/usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf
$rsync_HOME/rsync --daemon --config=/etc/rsyncd/rsyncd.conf
다시 채우다:
rsync 관련 지식:
rsync 명령 사용법
rsync 서버를 구성한 후 클라이언트에서 rsync 명령을 실행하여 다양한 동기화 작업을 구현할 수 있습니다. rsync에는 다양한 기능 옵션이 있습니다. 다음은 일반적으로 사용되는 옵션을 소개합니다.
rsync의 명령 형식은 다음과 같습니다.
1. rsync [옵션]... SRC [SRC]... [USER@]HOST:DEST
2. rsync [옵션]... [USER@]HOST:SRC DEST
3. rsync [옵션]... SRC [SRC]... DEST
4. rsync [옵션]... [USER@]HOST::SRC [대상]
5. rsync [옵션]... SRC [SRC]... [USER@]HOST::DEST
6. rsync [옵션]... rsync://[USER@]HOST[:PORT]/SRC [DEST]