我希望是简单的问题。如果我在 rsync 上运行校验和(作为 -c 标志),就像这样 -
rsync -c --log-file="/location/logfile.txt" \
-e "ssh -p {port number}" {source} {destination}
检测到的哈希/值差异会显示在日志文件中吗?它们将如何表示 - .c....?我读过的有关
rsync
日志文件的所有内容似乎都没有提到校验和。如果人类可读的校验和输出不会显示在日志文件中,我如何生成该输出?此校验和是否将源文件与目标文件进行比较?另外,这样做重要吗?还是对目标服务器上文件的连续副本运行校验和同样有用?提出这个问题的另一种方式可能是 - rsync 运行本身是否存在文件更改或损坏的重大风险?
如果我所做的只是传输静态内容 - 例如 PDF、图像文件、文本文件等 - 没有可执行文件、没有 ISO 之类的东西 - 校验和真的有必要吗?
这些都是我的问题!感谢大家。
答案1
仅当存在某些操作 mtime 值的风险时才需要校验和,即写入文件然后将文件 mtime 设置回较早的值。
在这种情况下,我会考虑使用 btrfs 快照和快照传输。这是非常有效的,因为与它类似,rsync
它只传输更改的数据,但不需要比较两侧,因为它从快照中知道发生了什么更改。