源服务器安装sersync工具,实时触发rsync进行同步
1.上传sersync2.5.4_64bit_binary_stable_final.tar.gz到/root目录下
[root@serysyc ~]# tar zxf sersync2.5.4_64bit_binary_stable_final.tar.gz [root@serysyc ~]# mv GNU-Linux-x86/ /usr/local/sersync [root@serysyc ~]# cd /usr/local/sersync/ [root@serysyc sersync]# cp confxml.xml confxml.xml.bak [root@serysyc sersync]# vim confxml.xml
参数说明:
localpath watch="/var/www/html":#源服务器同步目录
192.168.10.5:#目标服务器IP地址
name=“rsync”: #目标服务器rsync同步目录共享模块名称
users=“rsync”: #目标服务器rsync同步用户名
passwordfile="/etc/passwd.pass": #目标服务器rsync同步用户的密码在源服务器的存放路径
remote ip=“192.168.10.5”: #目标服务器ip,每行一个
failLogpath="/tmp/rsync_fail_log.sh" #脚本运行失败日志记录
start=“true” #设置为true,每隔600分钟执行一次全盘同步
2.现在检测实时同步
在源服务器/var/www/html目录写入数据
[root@serysyc html]# echo '123' > 2.txt [root@serysyc html]# echo '123.com' > 3.txt [root@serysyc html]# echo '123.com' > 4.txt [root@serysyc ~]# /usr/local/sersync/sersync2 -d -r -o /usr/local/sersync/confxml.xml ## 执行后完成此命令后,会一直处在持续监控状态,达到实时同步目的 ....
3.在目标服务器查看同步情况
4.设置sersync监控开机自动执行
结合crontab计划任务,定时检查sersync2是否运行,如果没有,则执行脚本重新执行/usr/local/sersync/sersync2 -d -r -o /usr/local/sersync/confxml.xml 来持续监控源服务器
vim /etc/rc.d/rc.local #编辑,在最后添加一行 /usr/local/sersync/sersync2 -d -r -o /usr/local/sersync/confxml.xml #设置开机自动运行此服务 chmod +x /etc/rc.d/rc.local
#!/bin/sh sersync="/usr/local/sersync/sersync2" confxml="/usr/local/sersync/confxml.xml" status=$(ps -aux |grep 'sersync2'|grep -v 'grep'|wc -l) if [ $status -eq 0 ]; then $sersync -d -r -o $confxml & else exit 0; fi
做计划任务,每一小时检查一次
* */1 * * * /root/check_sersync.sh