我使用PsExec v2.11
中的命令在远程计算机上运行批处理文件[path]\psexec.exe \\[myserver] "D:\Automation\BatchFiles\Test.bat"
第一次完美运作。之后,运行它会导致拒绝访问"访问被拒绝"错误。
导致此问题的原因以及如何解决?
编辑:等待30分钟左右后,我再次运行它,现在访问被拒绝。
经过进一步检查,当我成功使用psexec后,当我转到服务器并尝试保存对批处理文件的更改时,它表示正在被另一个进程使用。
另一个编辑:手动退出并返回到rdc'修复'问题。可以同时PSexec并保存文件。
答案 0 :(得分:0)
这是因为我的服务器在第一次运行后缓慢整理,而c:\ windows \ psexec.exe由系统PID打开,所以它不能被随后的运行od psexec所包围。 我正在使用Oracle agentDeployPsExec.bat脚本将EM代理部署到10"相同的"服务器。它适用于某些但不适用于其他人 myserver服务器需要1-4分钟才能删除c:\ windows \ psexec.exe,并且不忙,并且已关闭symantec。 运行的服务器有一个持久服务,PSEXESVC,存在,运行c:\ windows \ psexesvc.exe(所有者由BUILTIN \ Administrators vs" ...")。此服务由成功的psexec运行创建,然后在由躲避服务器退出时删除。
答案 1 :(得分:0)
在我的坐标中,使用带有随机服务名称的“-r”参数解决了这个问题。此参数(-r)定义为:
指定要创建或与之交互的远程服务的名称。
at microsoft technet(https://technet.microsoft.com/en-us/sysinternals/bb897553.aspx) 每次更改服务名称,这可能会有所帮助。