如何让 rsync 真正从中断的地方继续?

如何让 rsync 真正从中断的地方继续?

作为一个新手,在反复阅读了 SO 和文档中的大量问题几次后,我想出了这个解决方案:

rsync -Pavuh --append-verify source destination

其中--append-verifyflag 暗示--inplaceflag,--inplaceflag 暗示--partial而我只把-Pflag 放在那里,因为我懒得--progress单独写。

然而,当我发出此命令时,Ctrl+C它位于一个大文件的中间,然后重新发出它,在它完成后,我看到那个大文件留在我将其切断的地方。

正确的行为应该是按照文档在取消时根据标志保留部分传输的文件--partial(已完成),然后根据--append-verify标志在第二次试验中继续附加到它。

我怎样才能让 rsync 从中断的地方恢复?

答案1

问题可能出在-u标志上。由于部分传输的文件具有较新的时间戳,因此它只是跳过了它。

理论上,该-t选项应能确保这种情况不会发生,但我的假设是,某些(所有?)类型的中断可能会使部分文件保留较新的日期戳。我还没有测试过这一点。

我没有看到任何其他与“跳过某些文件”主题有任何变化的选项,所以这是我最好的猜测。

相关内容