我正在使用带有 remove-source-files 选项的 rsync,如下所示:
rsync --remove-source-files -arzvv --append /src /dst
但由于某种原因它失败了(连接中断或操作系统终止其进程),我想知道如果我再次运行它,它恢复/恢复失败文件传输的效果如何?我的数据在传输到新目的地之前是否可能已被删除?
答案1
来自 rsync man:
--删除源文件
这告诉 rsync 从发送端删除作为传输的一部分并且已在接收端成功复制的文件(即非目录)。
因此,似乎只有当文件被 rsync 标记为成功传输时,文件才会在源端被删除。
根据我的经验,Rsync 似乎对被终止非常友好,当这种情况发生时,我只需运行相同的命令,rsync 每次都能从他离开的地方启动,而不会产生任何副作用。
我发现使用你的选项重新运行已终止的 rsync 命令的唯一问题是 --append 选项。我建议你阅读手册的 --append 和 --append-verify 部分,并考虑检查接收端文件的一致性。