csync2實現系統雙向同步

系統環境rhel6.0,iptables和selinux關閉狀態

desktop52.example.com 192.168.0.52
desktop97.example.com 192.168.0.97
兩臺主機的時間同步

安裝軟件
yum install gcc gcc-c++ libgpg-error libgpg-error-devel libgcrypt libgcrypt-devel -y

tar zxf libtasn1-2.1.tar.gz
cd libtasn1-2.1
./configure && make && make install

tar zxf sqlite-2.8.17.tar.gz
cd sqlite-2.8.17
./configure && make && make install

tar zxf librsync-0.9.7.tar.gz
cd librsync-0.9.7
./configure && make && make install

tar jxf gnutls-2.6.6.tar.bz2
cd gnutls-2.6.6
./configure && make && make install

echo "/usr/local/lib"  >> /etc/ld.so.conf
ldconfig /usr/local/lib

tar zxf inotify-tools-3.13.tar.gz
inotify-tools-3.13
./configure && make && make install

yum install byacc flex -y  #編譯不會報錯,可是安裝時候會報錯
tar zxf csync2-1.34.tar.gz
cd csync2-1.34
./configure && make && make install
相互同步的主機之間是經過ssl安全鏈接的
make cert
csync2 -k /etc/csync2.key  #製做密鑰文件


2.配置csync2
yum install xinetd -y
vim /etc/xinetd.d/csync2
service csync2
{
        disable = no
        protocol = tcp
        flags = REUSE
        socket_type = stream
        wait = no
        user = root
        group = root
        server = /usr/local/sbin/csync2
        server_args = -i
}
man csync2
-i: Run in inetd server mode #運行在端口檢測程序模式
vim /etc/services       #添加下面一行
csync2  30865/tcp

vim /etc/csync2.cfg
group mygroup
{
        host desktop52.example.com desktop97.example.com; (每臺主機完整的主機名)
        #host host4@host4-eth2;
        key /etc/csync2.key;指定key文件的路徑
        include /csync2;須要同步的目錄
        #include %homedir%/bob;
        #exclude %homedir%/bob/temp;
        #exclude *~ .*; 排除以 「.」開頭的文件
        #
        #
        action
        #{
#               pattern /etc/apache/httpd.conf;
#               pattern /etc/apache/sites-available/*;
#               exec "/usr/sbin/apache2ctl graceful";
#
#logfile "/var/log/csync2_action.log";
#
do-local;
#
}
#
backup-directory /var/csync2; 防錯備份目錄,根據本身的需求設置,每臺主機上都要有
backup-generations 3;
#
#auto younger; 同步以最新的文件爲標準更新
}
#
# prefix homedir
#{
#on host[12]: /export/users;
#on *:   /home;
#}

scp /etc/csync2.* 192.168.0.97:/etc/    #將在一臺主機上的配置和密鑰拷貝到另外一臺上
csync2 -vvv -T 測試csync配置是否正確,

/etc/init.d/xinetd start  #啓動服務
chkconfig xinetd on


3、檢測
在一臺主機上/csync2目錄下建立、刪除或更改文件
而後執行csyns2  -xv進行同步
查看另一臺主機/csync2目錄下文件是否同步linux

相關文章
相關標籤/搜索