我正在尝试通过构建脚本停止并禁用远程任务。远程服务器是 Server 2k8。运行脚本的客户端是 Windows 7。两台机器都已加入域。
当我运行 时schtasks /Change /S remoteServer /TN "theTask"
,出现错误ERROR: The specified task name "theTask" does not exist in the system.
如果我在本地运行此命令,则一切正常。我已验证我在计算机上登录的域用户帐户对远程计算机具有管理员权限。
如果我schtasks /Query
在远程计算机上运行,我会得到所有计划任务的列表。如果我使用交换机远程运行相同的命令/S
,则只会返回两个旧任务(Google 更新任务)。
我最初的想法是这可能是权限错误,但当我尝试schtasks
使用/u
开关运行时,我得到了ERROR: The request is not supported
,这毫无意义,因为客户端和服务器都在运行现代版本的 Windows 调度程序。我很困惑。
我需要做什么才能允许schtasks
远程访问服务器上的所有任务?
编辑:schtasks
似乎仅返回“v1”样式任务的列表。
答案1
找到了!关闭 Windows 防火墙或启用Remote Scheduled Tasks Management
防火墙例外。
这张纸条就埋在这里:http://msdn.microsoft.com/en-us/library/bb736357(v=vs.85).aspx#Remarks
答案2
如果 Principals-->Principal-->UsedId 中指定的用户与尝试执行任务的用户不同,也可能会发生这种情况。
答案3
您的计算机和远程计算机可能具有不同的 windows/schtasks 版本。以下步骤解决了我的“错误:不支持该请求”问题。
- 将远程计算机 c:\windows\system32 中的 schtasks.exe 复制到您的计算机
- 运行复制的 schtasks.exe,而不是运行本地的 schtasks。