【发布时间】:2013-03-16 22:19:55
【问题描述】:
我们是一个小型办公室,在桌面上安装了 Linux 设备服务器 (SAMBA) 和 Win7HP。我们有一台机器充当“备份服务器”并每晚备份服务器。
将本应快速而肮脏的内容添加到将像这样循环的备份脚本中:
a. net use * /d /y
b. net use u: \\ourserver\userNN /u:userNN password
c. run sync util to sync u: to this user's storage space on backup server
d. repeat
如果我在批处理文件中手动创建上述内容,一切正常。 (但是,由于许多原因,该过程必须自动化并绑定到我们现有的备份脚本中。)
如果脚本创建了相同的批处理文件并运行它,第一个用户会登录并同步,但所有后续的net use 尝试都会失败。
同样,如果脚本尝试通过代码映射驱动器,则会收到此消息:
Unrecognised network error #183
上述错误表明网络驱动器/路径不可用 -- 但是使用相同参数在命令行键入的 net use 命令是成功的。
“备份服务器”是一个禁用了 UAC 的 Win7HP 机器。当启动 cmd 提示符时,所有窗口前面都有单词:Administrator: -- 但是,当脚本启动一个命令窗口以使用驱动器时,cmd 标题栏缺少该前缀。
有什么想法/想法吗?
【问题讨论】:
-
“程序必须自动化”。您是否曾经研究过计划流程? See Here。或
Control Panel->System and Security->Administrative Tools->Task Scheduler -
对我来说听起来像是权限。当脚本创建并运行此批处理文件时,它以不同于 您 运行它时的用户身份运行,并且您可能在网络上拥有比它更多的权限。
-
如果您使用任务调度程序运行,您必须确保任务在具有网络权限的帐户下运行,例如你。在默认本地系统计算机帐户下运行的任务将被锁定。
标签: windows-7 scripting batch-file