max*_*zig 7 rsync synchronization
我想在两个系统之间同步一个目录。为了使它更有趣,同步必须只在一个方向上完成,即:
这意味着源系统基本上具有主控角色,只是不会强制返回目标中已删除的文件。
两个 Linux 系统都有 rsync/ssh/scp 可用。
源目录中的新文件以一种可以使用它们的 mtime 来检测它们的方式创建,例如:
if mtime(file) > date-of-last-sync then: it is a new file that needs to be transfered
Run Code Online (Sandbox Code Playgroud)
此外,源目录中的现有文件不会更改,即同步不需要检查已经(完全)传输的文件中的差异。
Pau*_*ska -1
Rsync 将完全按照您的要求进行操作rsync -a --delete
(-x
如果您需要 xattrs,例如对于 selinux,请添加)。
Rsync永远不会删除源中的文件,但--delete
会删除目标中源中不存在的所有文件。
它将通过增量更新机制更新部分传输的文件。AFAIR rsync 将首先检查 mtime(+文件大小),并且仅当存在不匹配时才会完成指纹识别和增量更新。