lsyncd 同步疑问, 文件修改后,不会同步了

2016-03-19 17:48:32 +08:00
 muziling
两台机器 A 和 B 都装了 rsync 和 lsyncd ,互相同步

A 使用 lsyncd 默认调用 rsync 的参数:
xec: /usr/local/bin/rsync [-vslt] [--password-file=/etc/rsyncd/lsyncd.passwd] [-r] [/data/weblogic/ftpdir/] [weblogic@B::uploads/]

B 使用 lsyncd 默认调用 rsync 的参数:
xec: /usr/local/bin/rsync [-vslt] [--password-file=/etc/rsyncd/lsyncd.passwd] [-r] [/data/weblogic/ftpdir/] [weblogic@A::uploads/]

如果通过 ftp 上传文件到 B ,假设文件大小 100M , 文件上传超过同步默认的 10 秒间隔,文件上传到 B 完成后, 过一会儿发现 A 和 B 的文件大小 都没有 100M ,
查了原因是 ftp 上传会保留文件的时间,上传到 B 的时间是文件时间, A 从 B 自动同步,则 A 的时间是当前系统时间, 所以 B 的时间比较早,会自动再从 A 同步回来,导致文件不完整。

看了 rsync 的参数说明,有-t 参数,应该能保留文件时间的,但同步过程中的文件时间是系统时间,同步完成后时间才恢复成原时间。


然后给 lsyncd 加[ --append] 参数,能解决这个问题,但如果我后续把 100M 这个文件修改了,变小了,文件不会自动同步了。 怎么解决?
2459 次点击
所在节点    程序员
1 条回复
lightforce
2016-03-19 19:44:54 +08:00
--delete ,删掉源再改算办法伐?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/264761

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX