使用 rsync 时,需要在另一个文件之前传输特定文件

使用 rsync 时,需要在另一个文件之前传输特定文件

来自 rsync 联机帮助页

已排序的转移订单

Rsync 始终将指定的文件名排序到其内部传输列表中。这可以处理同名目录的内容合并在一起,可以轻松删除重复的文件名,并且当文件以与命令行上给出的顺序不同的顺序传输时,可能会让人感到困惑。

如果您需要在另一个文件之前传输特定文件,请将文件分成不同的 rsync 调用,或者考虑使用 --delay-updates (这不会影响排序的传输顺序,但确实会使最终的文件更新阶段发生得更快)

由于 --delay-updates 不会影响排序的传输顺序,因此如果我们“需要在另一个文件之前传输特定文件”,它有何帮助?

谢谢。

答案1

如果我们“需要在另一个文件之前传输特定文件”,它有何帮助?

正常情况下,一次复制一个文件。因此,如果顺序不正确,那么“错误”的文件可能会在其他文件之前更新相当长的一段时间。

使用--delay-updates,文件会在一段时间内复制,但最后很快就会正确地放入文件系统中。文件可能会被乱序复制,但目的地上的人可能能够分辨出的时间窗口比正常情况要小得多。

它并没有修复顺序,但确实降低了竞争条件失败的可能性。

相关内容