我已经阅读了 rsync 的联机帮助页,但我不相信存在这种功能,但我想与具有丰富 rsync 经验的人确认,以确保我没有遗漏某些内容(我正在进行 rsync 的初始设置) )。
情况如下:我有两台服务器(A 和 B)。我将设置一个 cron 作业,将文件从 A 上的目录移动到 B 上的目录。我已经按预期工作了。但是,一旦这些文件同步到目录 B,我将在重命名这些文件后将它们移动到多个其他目录。
据我所知,rsync 通过比较源目录和目标目录(时间戳、大小等)来确定要同步的内容。是否有任何标志可用于 rsync,以便它以某种方式使用同步文件的日志,以便它知道它已经同步了该文件,即使该文件不再存在于目标上?
我觉得这不属于 rsync 功能,但我想问一下。谢谢你!
编辑:我知道联机帮助页中的某处指定您将运行输出到日志文件。可以以某种方式引用吗?
答案1
这看起来工作量很大,但你可以:
- 将日志格式设置为仅显示复制文件的文件名
- 捕获并合并该日志以获得成功复制的文件的列表
- 触发下一个 rsync 以
--exclude-from=FILE
将其从运行中排除
正如所写,没有任何机制可以删除排除列表。它会无限制地增长(可能会减慢速度),除非您有办法识别可以安全删除的内容。