计划的 Robocopy 任务因 0x10 错误而失败

Pet*_*ron 4 windows-server-2003 windows-server-2008 scheduled-task robocopy

我正在尝试在 LAN 上的两个专用服务器之间安排文件同步。远程计算机运行 Windows Server 2003,本地计算机运行 Windows Server 2008。

我将远程文件夹安装为 J: 网络驱动器以克服任何权限问题,当我手动运行命令时,一切都按预期工作,并且文件夹内容被镜像:

robocopy J:\\ C:\\Files /MIR > c:\\robocopy.log
Run Code Online (Sandbox Code Playgroud)

但是一旦我将其放入计划任务中,它就会失败并返回代码 0x10 (16),这是一个严重错误。所以我假设网络权限错误并尝试在两个本地文件夹之间安排操作。发生了同样的错误,并且没有robocopy.log创建输出文件。我以管理员身份运行该操作。

为什么我的计划任务失败?


输出schtasks /query /v /fo LIST /s localhost供参考:

HostName:                             localhost
TaskName:                             \Sync Task
Next Run Time:                        11/7/2010 3:00:00 AM
Status:                               Ready
Logon Mode:                           Interactive/Background
Last Run Time:                        11/6/2010 2:49:21 PM
Last Result:                          16
Author:                               HOST\Administrator
Task To Run:                          robocopy.exe "C:\\LocalFolder" "C:\\Destination" /MIR /LOG > c:\\robocopy.log
Start In:                             N/A
Comment:                              N/A
Scheduled Task State:                 Enabled
Idle Time:                            Disabled
Power Management:                     Stop On Battery Mode
Run As User:                          HOST\Administrator
Delete Task If Not Rescheduled:       Enabled
Stop Task If Runs X Hours and X Mins: Disabled
Schedule:                             Scheduling data is not available in this format.
Schedule Type:                        Daily 
Start Time:                           3:00:00 AM
Start Date:                           8/6/2010
End Date:                             N/A
Days:                                 Every 1 day(s)
Months:                               N/A
Repeat: Every:                        Disabled
Repeat: Until: Time:                  Disabled
Repeat: Until: Duration:              Disabled
Repeat: Stop If Still Running:        Disabled
Run Code Online (Sandbox Code Playgroud)

Chr*_*s_K 6

不要使用映射的驱动器号,而是使用共享的 UNC 路径 (\\servername\sharename\folder)。这将简化事情,因为您的映射驱动器与您的会话相关联,而不一定是运行计划任务的会话。

接下来,确保与计划任务关联的用户有权访问该共享。

那应该能让你搞定。


Pet*_*ron 0

通过在调用 robocopy 命令之前添加以下操作来解决:

net use j: \\RemoteHost\Files RemotePassword /user:RemoteUser
Run Code Online (Sandbox Code Playgroud)