利用rsync+inotify实现数据实时同步脚本文件
将代码放在Server端,实现其它web服务器同步。首先创建rsync.shell,rsync.shell代码如下:
#!/bin/bash
host1=133.96.7.100
host2=133.96.7.101
host3=133.96.7.102
src=/data/www/
dst1=web1
dst2=web2
dst3=web3
user1=web1
user2=web2
user3=web3
/usr/local/inotify/bin/inotifywait
-mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f%e' -e
modify,delete,create,attrib $src |while read files
do
rsync -vzrtopg --delete --progress --password-file=/etc/rsyncd.password $src $user1@$host1::$dst1
rsync -vzrtopg --delete --progress --password-file=/etc/rsyncd.password $src $user2@$host2::$dst2
rsync -vzrtopg --delete --progress --password-file=/etc/rsyncd.password $src $user3@$host3::$dst3
done
//脚本中相关参数解释
--timefmt:指定时间的输出格式。
--format:指定变化文件的纤细格式
//接着,更改脚本权限,放到后台运行
chmod 755 /bin/rsync.sh
/bin/rsync.sh &
//最后,将此脚本加入到系统自启动文件
echo "/bin/rsync.sh" >> /etc/rc.local