1. 程式人生 > >Linux下配置rsync 同步資料

Linux下配置rsync 同步資料

Linux下配置rsync 同步資料
說明:本配置為rpm包安裝rsync
[[email protected] home]# rpm -qa |grep rsync #檢查系統是否安裝了rsync軟體包
rsync-2.6.8-3.1
[[email protected] CentOS]# rpm -ivh rsync-2.6.8-3.1.i386.rpm # 如果沒有安裝則手動安裝
[[email protected] rsync-3.0.4]# vim /etc/xinetd.d/rsync
1 配置rsync servervi /etc/xinetd.d/rsync

將disable=yes改為no
service rsync
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
server_args = --daemon
log_on_failure += USERID
}
2 配置rsync自動啟動
[[email protected] etc]# chkconfig rsync on
[[email protected] etc]# chkconfig rsync --list

rsync on
3 配置rsyncd.conf
[[email protected] etc]# vim rsyncd.conf
uid = root
gid = root
use chroot = no
max connections = 4
strict modes = yes
port = 873
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
[backup]
path = /srv

comment = This is test
auth users = scihoo
uid = root
gid = root
secrets file = /home/rsync.ps
read only = no
list = no
4 確保etc/services中rsync埠號正確
[[email protected] etc]# vim /etc/services
rsync 873/tcp # rsync
rsync 873/udp # rsync
5 配置rsync密碼(在上邊的配置檔案中已經寫好路徑)/home/rsync.ps(名字隨便寫,只要和上邊配置檔案裡的一致即可),格式
(一行一個使用者)
[[email protected] etc]# vi /home/rsync.ps
scihoo(user):scihoo(pass)
6 配置rsync密碼檔案許可權
[[email protected] home]# chown root.root rsync.ps
[[email protected] home]# chmod 600 rsync.ps
7 啟動配置
[[email protected] home]# /etc/init.d/xinetd restart
Stopping xinetd: [ OK ]
Starting xinetd: [ OK ]

或者:
啟動rsync服務端(獨立啟動)
[[email protected] home]# /usr/bin/rsync --daemon

8 加入rc.local
在各種作業系統中,rc檔案存放位置不盡相同,可以修改使系統啟動時把rsync --daemon載入進去。
[[email protected] home]# vi /etc/rc.local
/usr/local/rsync –daemon #加入一行
9 檢查rsync是否啟動
[[email protected] home]# lsof -i :873
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
xinetd 4396 root 5u IPv4 633387 TCP *:rsync (LISTEN)
客戶端配置
1 配置三個過程就可以了
1.1 設定密碼檔案
1.2 測試rsync執行指令
1.3 將rsync指令放入工作排程(crontab)
[[email protected] home]# vi /etc/xinetd.d/rsync
# 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
}
1.1 配置密碼檔案 (注:為了安全,設定密碼檔案的屬性為:600。rsync.ps的密碼一定要和Rsync Server密碼設定案裡的密
碼一樣)
[[email protected] home]# vi rsync.ps
sciooo(pass)
[[email protected] home]# chown root.root .rsync.ps # 注意必須給許可權
[[email protected] home]# chmod 600 .rsync.ps # 必須修改許可權
1.2 從伺服器上下載檔案
[[email protected] rsync-3.0.4]# rsync -avz --password-file=/home/rsync.ps [email protected]::backup /home/
從本地上傳到伺服器上去
[[email protected] rsync-3.0.4]# rsync -avz --password-file=/home/rsync.ps /home [email protected]::backup
PDF created with pdfFactory Pro trial version www.pdffactory.com
1.3 將rsync指令放入工作排程(crontab)
現在可以把我們的備份工作置入排程了,假設每天凌晨1點開始備份工作:
[[email protected] home]# crontab -e
0 1 * * * /usr/bin/rsync -az --password-file=/home/rsync.ps [email protected]::backup /home
2 重啟動任務計劃 crontab
[[email protected] home]# /etc/init.d/crond restart # crond 就是crontab的啟動程序
參看剛定的計劃任務
[[email protected] home]# crontab -l # 注意 是小寫l 不是1
根據需要,可以參考下面的時間進行調整
配置檔案 vi /etc/crontab
第1列分鐘1~59
第2列小時1~23(0表示子夜)
第3列日1~31
第4列月1~12
第5列星期0~6(0表示星期天)
Rsync配置
vi /etc/rsyncd.conf (預設是沒有的,可以手工建立)v#全域性選項
strict modes =yes #是否檢查口令檔案的許可權
port = 873 #預設埠873
log file = /var/log/rsyncd.log #日誌記錄檔案
pid file = /usr/local/rsync/rsyncd.pid #執行程序的ID寫到哪裡