我试图使用psexec.exe在Windows Server 2008上运行批处理脚本。我不能使用明文密码,所以我使用“-s”标志,而不是提供用户名/密码。 我得到以下错误:
Logon failure: unknown user name or bad password.
我正在运行的命令是:
> "E:\Deploy\psexec" \\whichever-server.com cmd /c net stop "MyService"
现在,这个确切的过程在我们以前的Windows Server 2003服务器上工作正常,但我们被迫迁移。 我一直在阅读psexec.exe文档的过去一天,迄今没有看到任何可以指出这个问题的原因出现在Windows Server 2008上 – 任何援助将不胜感激。
如果您只想使用-s标志来防止身份validation提示,则不需要-s标志。 PSExec使用RPC在远程计算机上安装服务,并调用此服务来执行命名命令。
指定“-s”意味着指定命令的执行上下文将是内置的SYSTEM / LocalSystem帐户上下文。 不指定此标志,该命令将在主叫用户(或用-U参数指定的用户帐户)的上下文中运行。
如果您需要在不指定凭证的情况下远程运行命令,则必须确保:a)从远程计算机的angular度来看,您启动“psexec”的用户是有效帐户; b)有权通过RPC安装服务运行你想运行的任何东西。 “未知的用户名或错误的密码”错误引起怀疑:a)未被遵守。 检查运行psexec的用户是否可以通过快速testing访问远程机器的共享。