Server 2008 R2上的cwrsync作为计划任务

我有一个rsync(cwrsync)batch file设置为运行,每天通过ssh备份多个目录到备份服务器。

我设置这个batch file作为一个计划任务运行,但它似乎并没有。

事情运行完美,如果我login时运行batch file,但是我不能让它作为计划任务运行。 如果我login或没有任何区别。 我也没有在事件日志中列出错误,表明日程安排任务执行,但batch file没有出于某种原因。

Windows计划任务默认情况下以特殊系统用户身份运行(不记得确切的名称,类似LocalSystem ?),但该用户通常没有与系统的常规用户相同的环境或权限。 不知道更多的细节,很难说出你的任务实际上出了什么问题,所以我只提一些想法。

您的批处理脚本可能会访问仅为您定义的映射驱动器号,因此在以特殊的“计划任务”用户身份运行时脚本会失败。 另一种可能是您的脚本访问networking共享,我相信“计划任务”用户通常没有权限访问这些共享。

最后,您可以尝试将批处理脚本中的命令输出redirect到文本文件。 这可能就像将>> C:\myscriptlogfile.txt到脚本中的每一行一样简单。 检查一个失败的运行的输出可能会给你一些关于错误的线索。

另一件要检查的是用引号括起来的命令?

Server 2008中存在一个问题,即如果命令行用引号括起来,则会阻止计划任务的运行。 (虽然我不确定它是否已经被修复了)

通常可以通过将命令行转换为旧的8.3样式path(例如C:\ progra〜1 \等)来解决这个问题。

有关详细信息和修补程序,请参阅知识库文章 。