Robocopy的“可重启”选项是什么?

114

robocopy /Z = "以可恢复模式复制文件"。

这个选项是做什么用的?我找到的所有文档都只引用了官方手册。什么是“可恢复”模式,为什么会有人使用它,它与“备份”模式(/B)有什么不同?

2个回答

127

可重启模式(/Z)与部分复制的文件有关。使用此选项时,如果在复制某个特定文件的过程中中断复制操作,下一次执行robocopy时可以从上次停止的地方继续而不是重新复制整个文件。

在通过潜在不稳定的连接复制非常大的文件时,该选项可能非常有用。

备份模式(/B)与robocopy如何从源系统读取文件有关。它允许复制文件,否则您可能会在文件本身或尝试复制文件的属性/权限时收到“访问被拒绝”的错误。您需要以管理员身份运行或具有备份权限才能使用此标志。


5
你好。我知道这是一个老问题,但我还是不太确定。你能否详细说明一下?如果一个文件被部分复制,然后在源文件中被更改,那么robocopy /z会像xcopy一样生成损坏的文件吗?为什么/z/b是互斥的?(*参考手册:“/ZB ::使用可重启模式;如果访问被拒绝,则使用备份模式。”) - LogicDaemon
3
我的最佳猜测是备份模式不允许重启;因此,如果没有权限错误,使用可重启模式更好。 - jpaugh
8
请注意,使用/z选项可能会带来巨大的性能损失。在我的情况下,去除/z选项后,我看到性能从20MB/s提升到了600MB/s。来源:https://serverfault.com/a/812212/268224 - user643011
更多关于 /Z/B 的信息请参见:https://superuser.com/a/468131/367018。 - BurnsBA
1
同意@user643011的说法。我复制了一个我找到的典型备份命令,其中包括/Z标志。它非常慢,所以我开始研究它,并在删除/Z后复制速度更快了。 - franchyze923
2
@user643011 性能下降的原因是由于需要大量额外记录日志来“恢复”失败的文件。 - Cornbeetle

1
请注意:
在使用可重启模式 /Z 或 /ZB(/ZB 尝试使用可重启模式,如果无法,则使用备份模式)时,此模式假定源文件已准备好进行复制。如果文件正在生成中(例如:压缩文件自动化和启动复制之前 - 时间 -,将导致目标文件损坏)。
我曾经遇到过这种情况,当我自动化备份文件的压缩时,在其他计算机(远程)上进行压缩,并且压缩应该在晚上9:00完成,所以我编写了一个程序,在晚上9:30复制该文件... 显然一切都被成功复制了,没有错误,但是由于在那个远程计算机上使用了其他任务,压缩花费了45分钟以上的时间。这样,当 robocopy /zb 开始时(由于没有使用问题而使用可重启模式),压缩文件仍在进行中,还需要15分钟才能完成。
删除了 /ZB 并从此只使用 /B。在备份模式(/B)下,Robocopy 尝试独占读取文件。如果源文件尚未准备好,Robocopy 将失败并在 30 秒后重试,重试次数由 /R 参数指定。我使用 /R:100。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接