詳情請見:
http://code.google.com/p/sersync/
首先檢查linux系統是否帶有rsync :
[root@lv183 ~]# rpm -qa |grep rsync
rsync-2.6.8-3.1
sersync 需要linux內核2.6以上,安裝前請檢查版本:
[root@lv183 ~]# uname -a
伺服器端安裝配置:
需要在 http://code.google.com/p/sersync/downloads/list 下載伺服器端軟體
目前比較穩定的版本為: sersync2.5_64bit_binary_stable_final.tar.gz
安裝:
[root@localhost sersync]# tar -zxvf sersync2.5_64bit_binary_stable_final.tar.gz
GNU-Linux-x86/
GNU-Linux-x86/confxml.xml
GNU-Linux-x86/sersync2
[root@localhost sersync]# cd ./GNU-Linux-x86/
編輯confvml.xml
[root@localhost GNU-Linux-x86]# vi confxml.xml
修改
<sersync>
<localpath watch="/usr/local/idoicancms">
<remote ip="192.168.0.***" name="tongbu1"/>
</localpath>
紅手字體為需要修改的地方, /usr/local/idoicancms" 為需要同步的路徑
<remote ip="192.168.0.***" name="tongbu1"/>
表明要將主伺服器上本地的/usr/local/idoicancms路徑下的文件,同步到遠程伺服器
設置訪問密碼:
<rsync>
<commonParams params="-artuz"/>
<auth start="false" users="transfer" passwordfile="/etc/rsync.pas"/>
<userDefinedPort start="false" port="874"/><!-- port=874 -->
<timeout start="false" time="100"/><!-- timeout=100 -->
<ssh start="false"/>
</rsync>
Transfer 為訪問用戶名
在伺服器端開啟sersync守護進程:
[root@localhost GNU-Linux-x86]# ./sersync2 –d
目標端配置:
vi /etc/rsyncd.conf
[root@lv183 etc]# vi rsyncd.conf
uid=root
gid=root
max connections=36000
use chroot=no
log file=/var/log/rsyncd.log
pid file=/var/run/rsyncd.pid
lock file=/var/run/rsyncd.lock
[tongbu1]
path=/usr/local/idoicancms
comment = xoyo video files
ignore errors = yes
read only = no
hosts allow = 192.168.**.**/24
hosts deny = *
~
上面配置文件,表明允許主伺服器(假設ip為192.168**.**)訪問,rsync同步模塊名為[tongbu1],將同步過來的文件放入path指定的目錄/usr/local/idoicancms.
如果有多台從伺服器,則每一台都需要進行類似的配置.
配置好之後,使用如下命令,開啟rsync守護進程:
開啟rsync daemon格式
[root@lv183 run]# rsync --daemon --config=/etc/rsyncd.conf
分別將伺服器端和目標端守護進程寫進 /etc/rc.local 里,這樣伺服器重啟后可以自行啟動.
OK ,以上配置就完成了,很簡單吧,可以在伺服器端新建立個文件來測試同步程序是否啟用.
[火星人 ] 基於sersync 的linux實時文件同步已經有603次圍觀