RoboCopy 恢复大文件

RoboCopy 恢复大文件

我读过我找到的其他帖子,但我的经历似乎有所不同。我绝对不是超级用户,我继承了我们使用的 Robocopy 过程,但简而言之,我映射网络驱动程序并使用 Robocopy 和“/s /e /z /xc /xn /r:100 /w:5 /log:”命令。(我终其一生都无法弄清楚为什么使用“/s”和“/e”,它们似乎互相矛盾。无论如何,我们经常通过可能中断的长而慢的网络传输 1GB 的文件。第一次,它传输了文件的约 7%,然后连接断开了。当我再次启动 Robocopy 时,它跳过了大文件而不是恢复。我似乎无法让恢复正常工作。下一次它传输到了 26.7%,但文件具有所有正确的属性,显示它是一个完整的文件。日期、文件大小等。

有没有办法让它工作,而不是每次都从 0% 开始?也许这与文件类型是加密文件批次有关,但仍然如此。

答案1

您可以尝试以下方法:

  • 增加重试次数。该/r参数控制重试次数。将其增加到更高的数字(如/r:200或更多)可能允许 Robocopy 最终恢复传输。

  • 增加重试之间的等待时间。/w参数控制这一点。较长的等待时间(如/w:30)可使网络连接在重试之间有更多时间恢复。

  • 使用检查点重启。该/z选项启用检查点重启,保存有关传输的状态信息,以便可以从最后一个检查点恢复。但是,这听起来可能不完全适用于您。您可能需要禁用此功能(/z-)并改为...

  • 使用文件属性作为检查点。既然您说文件大小和日期正在更新,那么您可以将其用作恢复的检查点。首先使用以下命令运行 Robocopy 以/z-禁用其检查点功能。然后,当传输失败并重新启动时,比较源文件和目标文件的大小和修改日期。使用该/mov选项跳过复制已传输的部分。

例如:

robocopy \\source\share c:\destination\folder /s /e /r:200 /w:30 /z- 

这将启动没有检查点的初始传输。如果失败并重新启动:

robocopy \\source\share c:\destination\folder /s /e /r:200 /w:30 /z- /mov 

/mov选项将移动(跳过)具有相同大小和修改日期的文件,从而有效地从您上次中断的地方恢复。

我希望这些选项能有所帮助

相关内容