此命令将程序 test.exe 复制到远程系统并以交互方式执行:
psexec \\marklap -c test.exe
Run Code Online (Sandbox Code Playgroud)
但是我需要向程序传递一些参数text.exe。
这不起作用:
psexec \\marklap -c "test.exe /S"
Run Code Online (Sandbox Code Playgroud) 这是我的场景:
我正在尝试使用PsExec从本地计算机远程启动和停止服务器上的 IIS 7.0 站点。
一些要点:
我正在使用命令:
"C:\Program Files\PSTools\psexec.exe" \\(server-alias) -u (server-domain)\(domain-admin) -p (password) C:\Windows\System32\inetsrv\appcmd.exe stop site "Default Web Site"
Run Code Online (Sandbox Code Playgroud)
这将返回错误:
PsExec v1.94 - Execute processes remotely
Copyright (C) 2001-2008 Mark Russinovich
Sysinternals - www.sysinternals.com
Could not start PsExec service on (server-alias):
Access is denied.
Run Code Online (Sandbox Code Playgroud)
以及一些重要的故障排除说明:
我正在尝试使用 psexec 在我的 Windows Server 2008 机器上运行一个程序。它返回消息“无法访问 myserver:未找到网络路径。”
如果关闭 Windows Server 防火墙,则可以成功运行该命令。
任何人都可以帮助我进行需要在 Windows Server 2008 防火墙中更改的特定设置才能使其正常工作吗?
提前致谢...
我尝试在 psexec 工具中使用多个命令,但我只是远程进入该计算机,但不会执行其他命令
psexec -i \\192.168.30.135 -u username -p password cmd & del abc.exe
Run Code Online (Sandbox Code Playgroud)
通过使用此命令行参数,我只能远程输入该机器,但它无法执行 del 命令来删除该文件,任何有解决方案的人都可以给我。
我正在尝试使用 PSExec 在交互式状态下启动远程计算机上的控制台应用程序。当我运行这样的事情时:
PsExec.exe -s -d -i 1 \\MyServer notepad.exe
Run Code Online (Sandbox Code Playgroud)
它启动记事本就好了。如果我然后运行这个:
PsExec.exe -s -d -i 1 \\MyServer C:\Temp\MyConsoleApp.exe
Run Code Online (Sandbox Code Playgroud)
它启动命令窗口,但据我所知没有执行任何操作。例如,当我在本地运行控制台应用程序时,它每 5 秒显示一次“心跳”,但是当我远程运行它时,命令窗口中不会显示任何内容。.exe 确实在任务管理器中显示为进程。有任何想法吗?
我正在尝试控制一个远程 Python 脚本,该脚本通过 psexec 1.98 从 stdin 读取命令,但我需要重定向 psexec 的输入,因为 psexec 本身将从另一个程序启动。但是,我没有运气让 psexec 接受重定向的输入。它应该工作吗?
我正在尝试做的一个例子,其中输入是一个包含远程脚本输入的文件:
psexec \\mymachine python c:\script.py < input
Run Code Online (Sandbox Code Playgroud) 试过
psexec \\ip.add.re.ss -accepteula -u local_admin -p cmd.exe
psexec \\computername -accepteula -u local_admin -p cmd.exe
psexec \\computername.fdqn -accepteula -u local_admin -p cmd.exe
Run Code Online (Sandbox Code Playgroud)
如果远程计算机具有 Windows xp 专业图像,则 _local_admin_ 帐户(当然)未经过 AD 身份验证。对于我得到的两者
Couldn't access ip.add.re.ss: (computername)
The system cannot find the path specified.
Run Code Online (Sandbox Code Playgroud)
在目标计算机上,pfirewall.log 文件显示以下内容
2011-01-27 11:46:43 DROP TCP src.ip dst.ip 4348 80 48 S 2766223090 0 65535 - - - RECEIVE
2011-01-27 11:46:43 DROP TCP src.ip dst.ip 4349 80 48 S 3163156243 0 65535 - - - RECEIVE
2011-01-27 11:46:45 DROP …Run Code Online (Sandbox Code Playgroud) 我想远程启动一个应用程序。我正在使用以下 PsExec 命令:
PsExec \\computerOne -u Domain\User1 -p 123456 -x "C:\Windows\System32\calc.exe"
Run Code Online (Sandbox Code Playgroud)
我尝试使用 -i 以便程序与桌面交互:
PsExec \\computerOne -u Domain\User1 -i 123456 -x "C:\Windows\System32\calc.exe"
Run Code Online (Sandbox Code Playgroud)
但这不起作用。第二个例子的错误是:
calc.exe 在 computerOne 上退出,错误代码为 -1073741502"
如果我省略规范,只写exe的路径,进程会列在任务管理器中,但我看不到任何用户界面。我是否必须更改我要在其上启动程序的桌面上的任何设置?
我打算使用 WMIC 来重置远程机器的信任,并且不在网络上。以下所有变化都会导致“拒绝访问”:
以下工作正常:
net use \\patterson-e10 /user:patterson-e10\wks.admin xxx
Run Code Online (Sandbox Code Playgroud)
以下所有失败:
wmic /node:"patterson-e10" /user:"patterson-e10\wks.admin" /password:xxx process call create "cmd /c dir"
wmic /node:"patterson-e10" /user:".\wks.admin" /password:xxx process call create "cmd /c dir"
wmic /node:"patterson-e10" /user:"wks.admin" /password:xxx process call create "cmd /c dir"
wmic /node:"patterson-e10" /user:wks.admin /password:xxx process call create "cmd /c dir"
Run Code Online (Sandbox Code Playgroud)
我即将尝试 Powershell (PS) 远程处理,但我不确定它如何与信任一起工作。
更新
我也尝试过 PSExec 和 SC(我将在其中“启动服务”)并遇到类似的身份验证失败。
似乎部分有效的唯一途径是我启动 RDP 会话,并将驱动器映射到我的源计算机,然后在那里运行命令。我研究了脚本 RDP,除了创建连接文件之外,我似乎无能为力。
更新 2
该机器没有控制台,因此以下将非域成员添加到TrustedHosts 的解决方案不起作用,我只是希望有另一种解决方案/解决方法。
在过去的几周里,我一直在互联网上搜索,以找出使用 psExec 在远程计算机上打开“计算器”时遇到的问题。最后我也在这里问了一个问题。我仍然没有这个问题的答案,但是获得这个问题的帮助变成了很多关于解决 psExec 问题的不同方法的来回答案和评论。我很感激我收到的帮助,所以我正在查看我得到的故障排除想法列表,并想 - 如果我可以搜索“troubleshoot psExec”并将此列表全部放在一个地方,那不是很好吗?而不是在大量不同的网站上挖掘一些有用的信息?
因此,考虑到这一点,并本着回答你自己的问题帖子的精神,我将列出我发现的所有故障排除方法,然后我会提出我的问题。我还不能添加很多链接,因为我是这个网站的新手,所以我对包含最少的信用和来源链接表示歉意。
\\targetmachine命令部分,尝试使用计算机名称或 IP 地址。有时,一个可以工作,而另一个可以工作。-i开关使程序在远程计算机上交互。-d开关,以便cmd在您正在执行的程序仍在运行时不会挂起。calc,cmd,或创建一个简单.bat文件来测试),以检查您的语法是否错误。-d切换,请运行您的程序并让它挂起一段时间,看看系统是否运行缓慢。有时某些程序会花费一些时间。psList或psService来检查您是否有权访问远程计算机\\targetcomputername\c$。这将使您能够访问目标 C: 驱动器中的文件夹。cmd以管理员身份运行-u和-p)。尝试使用您的常规帐户,然后尝试使用您的管理员帐户(如果您有的话)。-accepteula-/accepteula显然一种方式适用于某些系统,另一种方式适用于其他系统。-accepteula两次,因为第一个命令有时会被“吞没”并且不会被执行(来自这篇文章)。psExec在命令提示符下运行,以便您可以手动接受弹出的许可协议。(accepteula应该这样做,但显然有时不起作用)admin$目标计算机上的共享是否已打开pstools ×10
windows ×3
firewall ×2
application ×1
deployment ×1
iis-7 ×1
remote ×1
scripting ×1
wmi ×1