Chinaunix首页 | 论坛 | 博客
  • 博客访问: 151087
  • 博文数量: 55
  • 博客积分: 2409
  • 博客等级: 大尉
  • 技术积分: 371
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-10 14:19
文章分类

全部博文(55)

文章存档

2012年(5)

2011年(15)

2010年(6)

2009年(29)

我的朋友

分类:

2009-11-26 17:00:06

作者:老王

我们在使用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时不必手动敲密码:
阅读(1054) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~