
1.serync简介:
sersync是周洋同学在金山工作时在inotify基础上深度开发而成,sersync已不在更新,感谢周洋同学的开放源代码精神,sersync的实现需要建立在rsync和rsyncdaemon基础上。
2.简单笔记,深度理解
clinet端(在生产环境中可以是web服务器或者nfs客户端......)
server端(备份服务器即运行rsyncdaemon)
3.搭建过程(命令模式,此处脚本实现只见部分,剩下的未载)
clinet 端:
先rpm -qa rsync检查是否安装rsync软件,然后再开始搭建
wget -c http://down.whsir.com/downloads/sersync2.5.4_64bit_binary_stable_final.tar.gz
##serync 下载地址
tar zxvf sersync* ##解压serync
解压后得到两个文件
rwxr-xr-x. 1 root root 2214 Oct 26 2011 confxml.xml
rwxr-xr-x. 1 root root 1810128 Oct 26 2011 sersync2
其中sersync2 为启动文件
confxml.xml为配置文件
cat confxml.xml ##这是我修改后的配置文件
<sersync>
<localpath watch="/html"> ##clinet 监控的本地目录
<remote ip="192.168.3.144" name="html"/> server端的ip及rsyncd.conf里的模块
<!--<remote ip="192.168.8.39" name="tongbu"/>-->###将来可以往多个rsyncdaemon服务器上备份
<!--<remote ip="192.168.8.40" name="tongbu"/>-->
</localpath>
<rsync>
<commonParams params="-avz"/> inotify中使用的参数,详细见我的inotify笔记
<auth start="true" users="rsync_backup" passwordfile="/etc/rsync.password"/>
使用的rsyncdaemon用户名及认证密码文件
<userDefinedPort start="false" port="874"/><!-- port=874 -->
<timeout start="false" time="100"/><!-- timeout=100 -->
<ssh start="false"/>
超时重传及修改默认端口和ssh通道 #####true则为打开,false则为关闭
</rsync>
最后写一个监控脚本,可以开机运行,做计划任务都行,我这里让它隔1分钟在后台运行
#!/bin/bash
SERSYNC="/usr/local/serync/sersync2"
CONF_FILE="/usr/local/serync/confxml.xml"
STATUS=$(ps aux |grep 'sersync2'|grep -v 'grep'|wc -l)
if [ $STATUS -eq 0 ];
then
$SERSYNC -d -r -o $CONF_FILE &
else
exit 0;
fi
chmod +x serync.sh
*/1 * * * * /sersync.sh > /dev/null 2>&1 ##一分钟后运行
server 端
server端脚本参见linux使用rsync daemon 定时同步数据。
######最后夜深了,来一首“隐形的翅膀”#######
[Meting]
[Music server="netease" id="327115" type="song"/]
[/Meting]