有没有办法rsync以干净的方式告诉尽可能停止?两种选择:
rsync停止传输当前文件,清理任何临时文件并退出;rsync结束当前文件的传输然后停止。这样做Ctrl + C确实会在传输过程中停止并将临时文件留在那里,对吗?
即使使用--inplace? 最好的做法是什么?我正在使用rsyncwith--inplace并且我必须快点,我怎么能说“可能会以这个文件结束然后退出,或者现在退出,但是清理你正在复制的这个文件,这样你就不会留下损坏的东西(我不关心它是否被删除,我可以稍后再次备份)”或类似的东西。
c0d*_*ous 10
如果你用Ctrl+C它杀死 rsync确实会在传输过程中停止它,但它不会在那里保留任何临时文件,除非使用该--partial选项运行。
对于那些也对暂停 rsync 感兴趣的人,如果您按下Ctrl+Z它会暂停程序。当您通过运行fg或bgrsync恢复它时,它会重复文件未完成并继续下载其余文件。查看所有当前暂停的程序运行jobs
关于 --inplace
--inplace 的问题在于它在更新数据时不会创建新文件,它只是写入现有文件。如果在使用 --inplace 运行时按 ctrl + c 并且它正在更新现有文件,它将保留一个已完成一半的文件而不将其删除。此外,如果您只同步新文件而不更新现有文件,那么当您切断传输(使用 ctrl + c)时,它会留下一个不会删除的半成品文件。请注意,我不建议 --inplace 用于操作系统文件。你真的可以提升一些东西(因为它们经常变化)