http://steven2.blog.51cto.com/855881/284529
開機(jī)自啟動(dòng)
vi /etc/rc.local
/usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf
Linux(Debian和Fedora)下利用rsync同步工具自動(dòng)同步遠(yuǎn)程服務(wù)器文件的安裝和配置步驟:
一、安裝
1、Debian/Ubuntu
# apt-get install rsync (直接用系統(tǒng)自帶的下載和安裝工具安裝)
2、Fedora或其它
# tar xf rsync-3.0.5.tar.gz
# cd rsync-3.0.5
# ./configure --profix=/usr/local/rsync (配置安裝目錄為/usr/local/rsync)
# make
# make install
二、配置
1、 服務(wù)器端(123.196.114.200)
1) 配置文件
# cd /etc
# vim rsyncd.conf
uid = backup (本人單獨(dú)創(chuàng)建了備份用戶,也可用root,默認(rèn)是nobody)
gid = backup
use chroot = no (默認(rèn)是yes(需root運(yùn)行rsync)額外的安全保護(hù))
max connections = 4 (設(shè)置連接數(shù)為4, 默認(rèn)連接數(shù)不限制)
pid file = /var/run/rsyncd.pid (告訴進(jìn)程寫到 /var/run/rsyncd.pid 文件中)
lock file =/var/run/rsyncd.lock
log file = /var/log/rsyncd.log (日志文檔)
[100qslogbak] (模塊:rsync的客戶端)
path=/home/rsync/userlog/logbackup(欲備份的文檔目錄)
comment=From webserver
auth user=backup (連接帳號(hào),和系統(tǒng)帳號(hào)沒關(guān)系,服務(wù)器必須上存在此賬號(hào))
secrets file=/etc/rsyncd.secrets (密碼存放文件)
ignore errors (防止因?yàn)闀簳r(shí)資源不足或其他IO錯(cuò)誤導(dǎo)致的嚴(yán)重問題)
read only=no (只讀選項(xiàng),即,不讓客戶端上傳文件到服務(wù)器上)
list=no (不顯示列出rsync 服務(wù)器上提供同步數(shù)據(jù)的目錄)
[114bak] (模塊:rsync的另一個(gè)客戶端)
path=/home/rsync/userlog
comment=From agentserver
auth user=backup
secrets file = /etc/rsyncd.pwd
ignore errors
read only=yes
list=no
# :wq (保存并退出)
# vim rsyncd.secretes
用戶名:密碼 (如:backup:123456789)
# :wq (保存并退出)
# chmod 600 rsyncd.secretes (社區(qū)密碼文件權(quán)限為600,此步必須設(shè)置)
2) 啟動(dòng)服務(wù)
# /usr/bin/rsync --daemon (--config=/etc/rsyncd/rsyncd.conf 此句可有可無)
2、 客戶端(192.168.1.100)
客戶端只要配置密碼文件即可。
# cd /etc
# vim rsyncd.secretes
密碼 (如:123456789)
# chmod 600 rsyncd.secretes (社區(qū)密碼文件權(quán)限為600,此步必須設(shè)置)
注:此處密碼一定要與rsync服務(wù)器端密碼文件中密碼保持一致。并且應(yīng)為rsync客戶端密碼。
# /usr/bin/rsync --zvrtopg --password-file=/etc/rsyncd.secretes --progress
rsync@112.106.114.200:: 100qslogbak /home/rsync/userlog/
注:上述命令是指把服務(wù)端的這個(gè)路徑(/home/rsync/userlog/logbackup)下的文件同步到客戶端的這個(gè)路徑(/home/rsync/userlog/)下。若想反過來,把客戶端的文件同步到服務(wù)端,則為如下:
# /usr/bin/rsync --zvrtopg --password-file=/etc/rsyncd.secretes --progress
/home/rsync/userlog/ rsync@112.106.114.200:: 100qslogbak
# vim backup.sh (把命令保存到一個(gè)腳本文件中,以便做定時(shí)任務(wù))
/usr/bin/rsync --zvrtopg --password-file=/etc/rsyncd.secretes --progress
rsync@112.106.114.200:: 100qslogbak /home/rsync/userlog/
# :wq
3、 設(shè)置防火墻
Rsync默認(rèn)使用的端口是873,安裝配置完后,客戶端和服務(wù)端都需要設(shè)置防火墻。
# iptables -i INPUT -p tcp --dport 873 -j ACCEPT
# iptable -L (查看防火墻的設(shè)置)
三、定時(shí)任務(wù)
為了讓系統(tǒng)自動(dòng)執(zhí)行文件同步,需在系統(tǒng)的crontab中添加定時(shí)任務(wù)。
# crontab –u root –e
00 2 * * * sh /usr/bin/backup.sh (凌晨2點(diǎn)整執(zhí)行定時(shí)任務(wù))
# echo "/usr/bin/rsync --daemon" >> /etc/rc.local (開機(jī)自動(dòng)啟動(dòng)rsync服務(wù))
四、注意事項(xiàng)
1) 提示密碼文件不能讀,需要手工輸入密碼時(shí),可能就是密碼文件權(quán)限不是600,或者格式不對(duì),或者是路徑不對(duì)。
2) 提示要?jiǎng)?chuàng)建新目錄或文件傳輸失敗時(shí),可能是欲同步的目錄沒有權(quán)限,最好把欲同步的目錄權(quán)限修改為744。
3) 從客戶端同步文件到服務(wù)端時(shí),最好單個(gè)文件目錄傳輸,否則易出錯(cuò)。
小白