<wbr>sersync主要用于服务器同步,web镜像等功能。sersync是使用c++编写,在结合rsync同步的时候,节省了运行时耗和网络资源,因此更快。sersync配置起来很简单。另外本项目相比较其他脚本开源项目,使用多线程进行同步,尤其在同步较大文件时,能够保证多个服务器实时保持同步状态,同步及时快速。</wbr>
服务器:192.168.128.10
客户端:192.168.128.11
<wbr></wbr>
1,客户端rsync配置
[root@localhost ~]# vi/etc/rsyncd.conf
uid=root
gid=root
maxconnections=36000
use chroot=no
logfile=/var/log/rsyncd.log
pidfile=/var/run/rsyncd.pid
lockfile=/var/run/rsyncd.lock
<wbr></wbr>
[http]
path=/usr/local/apache2<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>#同步到本地的目录<wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
comment = httpfile
ignore errors =yes
read only = no
hosts allow =192.168.128.10/24
hosts deny = *
[root@localhost~]#/usr/bin/rsync --daemon --config=/etc/rsyncd.conf
<wbr></wbr>
2,服务器端sersync配置
[root@localhost ~]# cd/usr/local/
[root@localhost local]# tarzxf sersync2.5_32bit_binary_stable_final.tar.gz
[root@localhost local]# cdGNU-Linux-x86/
[root@localhostGNU-Linux-x86]# vi confxml.xml
<localpathwatch="/usr/local/apache2"><wbr><wbr><wbr><wbr><wbr><wbr>#监控的目录</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><remote ip="192.168.128.11"name="http"/><wbr><wbr><wbr><wbr><wbr><wbr>#客户端IP,http为客户端rsync模块名,如果同步到多台服务器,只需复制上一行内容修改IP即可。</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
</localpath>
<wbr></wbr>
[root@localhostGNU-Linux-x86]#./sersync2 -r<wbr><wbr><wbr><wbr><wbr>#第一次完整同步</wbr></wbr></wbr></wbr></wbr>
[root@localhostGNU-Linux-x86]#./sersync2 -d<wbr><wbr><wbr><wbr><wbr>#开启守护进程</wbr></wbr></wbr></wbr></wbr>
可以将以上两条命令简写:
[root@localhostGNU-Linux-x86]#./sersync2 -r -d<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>#同步并开启守护</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr></wbr>
3,sersync2其他命令参数
1)查看启动参数帮助
./sersync2 --help
<wbr></wbr>
2)指定配置文件
./sersync2 -oXXXX.xml
对于sersync使用可执行文件目录下的默认配置文件confxml.xml,如果需要使用另一个配置文件,可以使用-o参数指定其它配置文件。
<wbr></wbr>
3)指定默认的线程池的线程总数
./sersync2 -n num
例如 ./sersync -n 5则指定线程总数为5,如果不指定,默认启动线程池数量是10,如果cpu使用过高,可以通过这个参数调低,如果机器配置较高,可以用-n跳高线程总数。
<wbr></wbr>
4)不进行同步,只运行插件
./sersync2 -mpluginName
<wbr><wbr><wbr>例如./sersync -mcommand,则在监控到文件事件后,不对远程目标服务器进行同步,而是直接运行command插件。</wbr></wbr></wbr>
<wbr></wbr>
5)多个参数可以配合使用
./sersync2 -n 8 -o abc.xml-r -d
表示,设置线程池工作线程为8个,指定abc.xml作为配置文件,在实时监控前作一次整体同步,以守护进程方式在后台运行。