rsync+inotify文件實(shí)時(shí)同步

所需軟件下載地址:

創(chuàng)新互聯(lián)是一家專注于做網(wǎng)站、網(wǎng)站建設(shè)與策劃設(shè)計(jì),東陽網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:東陽等地區(qū)。東陽做網(wǎng)站價(jià)格咨詢:18982081108

http://pan.baidu.com/s/1ikubG

http://pan.baidu.com/s/1d0C1L

本實(shí)驗(yàn)實(shí)現(xiàn)的是單向同步,非雙向同步

實(shí)驗(yàn)環(huán)境:兩臺(tái)虛擬機(jī),我這是兩臺(tái)CentOS5.5

軟件部署:

服務(wù)端(IP:192.168.1.104):rsync-3.0.9.tar.gz和inotify-tools-3.14.tar.gz

客戶端(IP:192.168.1.108):rsync-3.0.9.tar.gz

步驟:

[root@CentOS5smb]#ls

inotify-tools-3.14.tar.gz    rsync-3.0.9.tar.gz

[root@CentOS5smb]#tar zxvf rsync-3.0.9.tar.gz -C /gwq/20130616/

[root@CentOS5smb]#cd /gwq/20130616/rsync-3.0.9

[root@CentOS5rsync-3.0.9]#./configure --prefix=/usr/local/rsync

[root@CentOS5rsync-3.0.9]#make

[root@CentOS5rsync-3.0.9]#make install

[root@CentOS5rsync-3.0.9]#cd /usr/local/rsync/

[root@CentOS5rsync]#echo "rsync-pwd" > /usr/local/rsync/rsync.passwd

///rsync-pwd為密碼,可自定義

[root@CentOS5rsync]#chmod 600 rsync.passwd

///為了避免不必要的錯(cuò)誤,請(qǐng)把權(quán)限改為600

到此服務(wù)端上的rsync已經(jīng)安裝好了,但還沒進(jìn)行配置,我們先來安裝inotify,稍后再來進(jìn)行配置rsync

[root@CentOS5smb]#ls

inotify-tools-3.14.tar.gz    rsync-3.0.9.tar.gz

[root@CentOS5smb]#tar zxvf inotify-tools-3.14.tar.gz -C /gwq/20130616/

[root@CentOS5smb]#cd /gwq/20130616/inotify/

[root@CentOS5inotify-tools-3.14]#./configure --prefix=/usr/local/inotify

[root@CentOS5inotify-tools-3.14]#make

[root@CentOS5inotify-tools-3.14]#make install

現(xiàn)在進(jìn)行配置rsync

新建rsync.sh文件,我這里在/tmp下新建rsync.sh

[root@CentOS5tmp]#vi rsync.sh

#/bin/bash

host=192.168.1.108    ///客戶端IP地址

src=/tmp    ////服務(wù)端要實(shí)時(shí)監(jiān)控的目錄

des=web    ///認(rèn)證的模塊名,需要與客戶端一致

user=webuser    ///建立密碼文件里的認(rèn)證用戶

/usr/local/inotify/bin/inotifywait-mrq--timefmt'%d/%m/%y%H:%M'--format'%T%w%f%e'-emodify,delete,create,attrib$src\

|whilereadfiles

do

/usr/bin/rsync-vzrtopg--delete--progress--password-file=/usr/local/rsync/rsync.passwd$src$user@$host::$des

echo "${files}wasrsynced" >> /tmp/rsync.log2 > &1

done

[root@CentOS5tmp]#chmod 764 rsync.sh

[root@CentOS5tmp]#sh rsync.sh&    ///后臺(tái)運(yùn)行該腳本

[root@CentOS5tmp]#echo “/tmp/rsync.sh” >> /etc/rc.local/rsync.sh    ///腳本加入到開機(jī)啟動(dòng)項(xiàng)里

[root@CentOS5tmp]#touch /etc/rsyncd.conf    ///在etc下新建一個(gè)rsyncd.conf空文件

到此服務(wù)端已經(jīng)配置完畢,下面我們來配置客戶端

客戶端配置,下載安裝rsync

[root@CentOS5gwq]#ls

rsync-3.0.9.tar.gz

[root@CentOS5gwq]#tar zxvf rsync-3.0.9.tar.gz

[root@CentOS5gwq]#ls

rsync-3.0.9    rsync-3.0.9.tar.gz

[root@CentOS5gwq]#cd rsync-3.0.9

[root@CentOS5rsync-3.0.9]#./configure --prefix=/usr/local/rsync

[root@CentOS5rsync-3.0.9]#make

[root@CentOS5rsync-3.0.9]#make install

[root@CentOS5rsync-3.0.9]#echo “webuser:rsync-pwd” > /usr/local/rsync/rsync.passwd

///服務(wù)端建立的密碼文件里只有密碼,沒有用戶名;而在客戶端里建立的密碼文件,用戶名與密碼都有

[root@CentOS5rsync-3.0.9]#cd /usr/local/rsync

[root@CentOS5rsync]#chmod 600 rsync.passwd

新建rsync配置文件

[root@CentOS5rsync]#pwd

/usr/local/rsync

[root@CentOS5rsync]#vi rsync.conf

uid=root

gid=root

usechroot=no

maxconnections=10

strictmodes=yes

pidfile=/var/run/rsyncd.pid

lockfile=/var/run/rsync.lock

logfile=/var/log/rsyncd.log

[web]///服務(wù)端rsync.sh里認(rèn)證模塊名稱

path=/tmp/

comment=webfile

ignoreerrors

readonly=no

writeonly=no

hostsallow=192.168.1.104

hostsdeny=*

list=false

uid=root

gid=root

authusers=webuser

secretsfile=/usr/local/rsync/rsync.passwd

[root@CentOS5rsync]#/usr/local/rsync/bin/rsync –daemon

///啟動(dòng)服務(wù)端和客戶端的rsync服務(wù)

在服務(wù)端tmp目錄下新建文件和目錄,客戶端自動(dòng)同步

手動(dòng)同步命令格式:

[root@CentOS5rsync]#/usr/bin/rsync-vzrtopg--delete–progress --password-file=/usr/local/rsy

nc/rsync.passwd/tmp/webuser@192.168.1.108::web

自動(dòng)同步命令格式:

sh rsync.sh&

可以制定任務(wù)計(jì)劃,讓rsync各一段時(shí)間同步一次,格式為:

*/1****/usr/bin/rsync -Rav --delete--password-file=/usr/local/rsync/rsync.passwdwebuser@192.168.2.173::web/tmp

這樣就會(huì)每分鐘同步一次,我做這個(gè)格式的任務(wù)計(jì)劃得到的效果是同步客戶端指定的文件和目錄,而不是服務(wù)端的,就等于說你在服務(wù)端新建一個(gè)文件,一分鐘后會(huì)自動(dòng)消失,因?yàn)榭蛻舳死锩鏇]有此文件,而在客戶端里面新建一個(gè)文件,則一分鐘后會(huì)同步至服務(wù)端(cron計(jì)劃需要在服務(wù)端上操作執(zhí)行,客戶端上操作是沒反應(yīng)的)

而使用sh rsync.sh&則同步服務(wù)端的

文章標(biāo)題:rsync+inotify文件實(shí)時(shí)同步
當(dāng)前鏈接:http://muchs.cn/article30/ipihpo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護(hù)、App開發(fā)、網(wǎng)站內(nèi)鏈標(biāo)簽優(yōu)化、網(wǎng)站策劃品牌網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化