作者:老王
我们在使用rsync的时候,一般是将rsync命令放到cron里定时执行,不过这样同步,实际内容会有一段长时间的延迟。linux内核自打2.6.13起,提供了inotify钩子,可以让第三方软件有机会监控文件的变化情况,就是这样一款软件。
在安装inotify-tools前请先确认你的linux内核是否达到了2.6.13,并且在编译时开启了CONFIG_INOTIFY选项.你可以按下面的方式简单的确认这一点:ls /proc/sys/fs/inotify,如果支持的话会有max_queued_events,max_user_instances,max_user_watches三项,可能需要根据情况调整这几个参数。
剩下的就简单了(把其中的path,username,ip换成你的即可):
inotifywait -mrq --event create,delete,modify,move --format '%w %e' /path | while read w e; do
if [ "$e" = "IGNORED" ]; then
continue
fi
rsync -az --delete $w username@ip:$w
done
补充:
似乎比rsync更牛,不过今儿我是没时间尝试了,留个念想,以后慢慢搞。
顺便给个链接,免得你突然记不起来如何在使用rsync时不必手动敲密码:
阅读(1080) | 评论(0) | 转发(0) |