即使出现错误 2(未找到文件),我怎样才能让 robocopy 继续尝试?

即使出现错误 2(未找到文件),我怎样才能让 robocopy 继续尝试?

我有一个脚本,每晚运行一次以进行备份。该脚本的功能是备份数据库,将其压缩为 7zip 文件,然后将其复制到我设置的网络位置。

当使用 Robocopy 将文件移动到基​​于云的网络文件夹时,我的脚本出现以下错误,因此它可能因互联网而变得不可用。

02:29:32   Moving file...
02:29:32       Filename: MyBackup.7z
02:29:32     Src Folder: C:\SQLBackups\DBBackups\.
02:29:32    Dest Folder: \\myserver\database_backups
02:34:26   -------------------------------------------------------------------------------
02:34:26   ROBOCOPY     ::     Robust File Copy for Windows                              
02:34:26   -------------------------------------------------------------------------------
02:34:26   Started : Tuesday, October 30, 2018 2:29:32 AM
02:34:26   Source : C:\SQLBackups\DBBackups\
02:34:26   Dest = \\myserver\database_backups\
02:34:26   Files : MyBackup.7z
02:34:26   
02:34:26   Options : /DCOPY:DA /COPY:DAT /MOV /NP /R:1000000 /W:30 
02:34:26   ------------------------------------------------------------------------------
02:34:26   1    C:\SQLBackups\DBBackups\
02:34:26   New File          886.7 m    MyBackup.7z
02:34:26   2018/10/30 02:33:56 ERROR 121 (0x00000079) Changing File Attributes C:\SQLBackups\DBBackups\MyBackup.7z
02:34:26   The semaphore timeout period has expired.
02:34:26   Waiting 30 seconds... Retrying...
02:34:26   New File          886.7 m    MyBackup.7z
02:34:26   2018/10/30 02:34:26 ERROR 2 (0x00000002) Changing File Attributes C:\SQLBackups\DBBackups\MyBackup.7z
02:34:26   The system cannot find the file specified.
02:34:26   ------------------------------------------------------------------------------
02:34:26   Total    Copied   Skipped  Mismatch    FAILED    Extras
02:34:26   Dirs :         1         0         0         0         0         0
02:34:26   Files :         1         0         0         0         1         0
02:34:26   Bytes :  886.70 m         0         0         0  886.70 m         0
02:34:26   Times :   0:04:53   0:04:23                       0:00:30   0:00:00
02:34:26   Ended : Tuesday, October 30, 2018 2:34:26 AM
02:34:26   -------------------------------------------------------------------------------
02:34:26   Error moving file.

如上所示,它似乎在处理非常大的文件时遇到了问题。然后发生了一些事情,例如网络不可用或服务器上的共享出现问题。

默认情况下,Robocopy 的重试选项设置为重试 100 万次,每次重试之间等待 30 秒。我的问题是,为什么我的脚本只尝试了两次?是因为吗ERROR 2?只有当特定错误不明显时才会重试吗?有没有办法让 Robocopy 即使发生错误 2 也继续重试?

我确实认为问题在于互联网“断线”了一段时间(甚至可能是一两个小时)。我只希望 Robocopy 继续尝试,直到连接恢复。

答案1

/MOV 移动文件,第一个错误发生后文件在源中不存在。第二个错误(文件不存在)是严重错误,会中断复制。

相关内容