一、sersync简介
1、sersync是基于Inotify开发的,类似于Inotify-tools的工具
2、sersync可以记录下被监听目录中发生变化的(包括增加、删除、修改)具体某一个文件或某一个目录的名字,然后使用rsync同步的时候,只同步发生变化的这个文件或者这个目录。
二、Rsync+Inotify-tools与Rsync+sersync这两种架构有什么区别?
1、Rsync+Inotify-tools
(1):Inotify-tools只能记录下被监听的目录发生了变化(包括增加、删除、修改),并没有把具体是哪个文件或者哪个目录发生了变化记录下来;
(2):rsync在同步的时候,并不知道具体是哪个文件或者哪个目录发生了变化,每次都是对整个目录进行同步,当数据量很大时,整个目录同步非常耗时(rsync要对整个目录遍历查找对比文件),因此,效率很低。
2、Rsync+sersync
(1):sersync可以记录下被监听目录中发生变化的(包括增加、删除、修改)具体某一个文件或某一个目录的名字;
(2):rsync在同步的时候,只同步发生变化的这个文件或者这个目录(每次发生变化的数据相对整个同步目录数据来说是很小的,rsync在遍历查找比对文件时,速度很快),因此,效率很高。
小结:当同步的目录数据量不大时,建议使用Rsync+Inotify-tools(http://90sec.blog.51cto.com/7404127/1543843);当数据量很大(几百G甚至1T以上)、文件很多时,建议使用Rsync+sersync。
三、基本操作配置
1、在132上配置rsync服务
[root@90sec ~]# yum -y install rsync
[root@90sec ~]# yum -y install xinetd
[root@90sec ~]# vim /etc/xinetd.d/rsync
[root@90sec ~]# chkconfig rsync on
[root@90sec /]# mkdir data
[root@90sec /]# vim /etc/rsyncd.conf
[root@90sec /]# vim /etc/rsyncd.passwd
[root@90sec /]# chmod 600 /etc/rsyncd.passwd
[root@90sec /]# service xinetd restart
配置sersync端
[root@90sec ~]# yum -y install rsync
[root@90sec ~]# yum -y install xinetd
[root@90sec ~]# vim /etc/xinetd.d/rsync
[root@90sec src]# tar xf sersync2.5.4_64bit_binary_stable_final.tar.gz
[root@90sec data]# mv GNU-Linux-x86/ /usr/local/sersync
[root@90sec GNU-Linux-x86]# vim /usr/local/sersync/conf/confxml.xml
[root@90sec GNU-Linux-x86]# mkdir -p /data
[root@90sec GNU-Linux-x86]# echo "admin" > /etc/rsyncd.passwd
[root@90sec GNU-Linux-x86]# chmod 600 /etc/rsyncd.passwd
设置成开机自动启动
[root@90sec sersync]# echo '/usr/local/sersync/sersync2 -d -r -o /usr/local/sersync/confxml.xml' >> /etc/rc.d/rc.local
[root@90sec sersync]# source /etc/rc.d/rc.local
测试