一.安裝步驟
1) 安裝rsync 點選下載下傳rsync-3.0.9.tar.gz
下載下傳檔案放到該目錄下/usr/src
#cd /usr/src
#tar -zxvf rsync-3.0.9.tar.gz //解壓檔案
#cd rsync-3.0.9 //進入該檔案目錄
#./configure //主要的作用是對即将安裝的軟體進行配置,檢查目前的環境是否滿足要安裝軟體的依賴關系
#make //編譯
#make install //安裝
2)安裝inotify 點選下載下傳inotify-tools-3.14.tar.gz
#tar -zxvf inotify-tools-3.14.tar.gz //解壓檔案
#cd inotify-tools-3.14 //進入該檔案目錄
3)服務端編寫檔案夾監視腳本
#vi /srv/rsync.sh
rsync.sh内容如下:
#!/bin/bash
src=/srv/test/ #監視改檔案路徑,檔案夾内容發生改變觸發伺服器資料同步
des=backup #客服端配置的子產品(客服端會介紹)
host="192.168.10.6" #同步到的IP位址,如有多個用空格隔開。例如:host="192.168.10.6 192.168.10.7"
/usr/local/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' -e modify,delete,create,attrib $src | while read files #這邊要主要下inotifywait,隻有Linux 2.6.13 或更高版的才會相容
do
for hostip in $host
#rsync -vzrtopg --delete --progress rsync@$hostip::$des $src --password-file=/etc/rsync.pas 該指令是客服端跟新後同步到伺服器端
rsync -vzrtopg --delete --progress --password-file=/etc/rsync.pas $src rsync@$hostip::$des #改指令是伺服器端跟新後同步到客服端(看具體使用情況選擇)
#--password-file=/etc/rsync.pas 配置到客服端,也就是用戶端路徑下有rsync.pas 用于配置登陸密碼
#rsync 是用戶端配置的登陸名
done
echo "${files} was rsynced" >>/tmp/rsync.log 2>&1 #生成日志檔案
4)啟動nohup
#nohup /bin/bash /srv/rsync.sh & //背景不挂斷地運作指令
#echo "nohup /bin/bash /root/bin/rsync.sh &" >> /etc/rc.local //設定linux伺服器啟動自動啟動nohup
rsync + inofity服務端就配置好了,接下來我們來配置客服端
二.安裝步驟(客服端)
1) 安裝rsync 步驟如上!
2)配置rsyncd.conf
#vi /etc/rsyncd.conf //打開rsyncd.conf
rsyncd.conf内容如下:
uid = root
gid = root
port = 873 #post rsync使用的端口号 也是預設端口号 www.jbxue.com
hosts allow = 192.168.10.5 #allow hosts ip 應許的ip通路,也可以設定為ip段
max connections =
timeout=
##config file
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
#motd file = /etc/rsyncd.motd
##global config
[backup]
path =/srv/test #客服端已rsync服務端同步的檔案路徑
comment = from 192.168.10.5 #解釋
read only = no
list = no
##client sync config
auth users =rsync #配置登陸名稱
secrets file = /etc/rsync.passwd #配置使用者名密碼檔案
3)配置rsync.passwd
#vi /etc/rsync.passwd
rsync.passwd内容如下:
rsync:cyc #rsync登陸使用者名 cyc是登陸密碼
#chomd 600 rsync.passwd #需要注意rsync.passwd的權限配置
客服端配置完成!
三.如果再配置過程中出現如下問題,分析出錯原因。
問題一:
@ERROR: chroot failed
rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]
原因:
伺服器端的目錄不存在或無權限,建立目錄并修正權限可解決問題。
問題二:
@ERROR: auth failed on module backup
伺服器端該子產品(backup)需要驗證使用者名密碼,但用戶端沒有提供正确的使用者名密碼,認證失敗。
提供正确的使用者名密碼解決此問題。
問題三:
@ERROR: Unknown module ‘backup'
伺服器不存在指定子產品。提供正确的子產品名或在伺服器端修改成你要的子產品以解決問題。
本文轉自東方之子736651CTO部落格,原文連結: http://blog.51cto.com/ecloud/1789322,如需轉載請自行聯系原作者