0

嗨,我想弄清楚如何将 .exe 文件安装到 5 台服务器机器上,但我在尝试在自己的机器上静默安装时遇到了麻烦。我有这个命令 Invoke-Command -ScriptBlock {Start-Process -FilePath \\xxx-STUDENT3-W7\Users\bkoo004\Documents\test\ccleaner402.exe \r} 但我在Windows 文件夹。当我使用这个命令时

Invoke-Command -computername xxxxxxxxxxx.edu -ScriptBlock {start-process -filepath "\\xxx-S TUDENT3-W7\Users\bkoo004\Documents\test\ccleaner402.exe" } -Credential $cred

它给了我一个错误,说由于错误无法执行此命令:找不到网络名称。+ CategoryInfo : InvalidOperation: (:) [Start-Process], InvalidOperationException + FullyQualifiedErrorId : InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand

但我知道网络名称是正确的,因为当我运行 Invoke-Command -computername xxxxxxxxxxx.edu -ScriptBlock {get-process } -Credential $cred 它会返回该服务器的 get-process。

我认为没有获取 setup.iss 文件是因为我尝试安装的程序不使用 installshield 但对于尝试在我的远程服务器上运行 start-process 的错误我不知道它是什么。

4

1 回答 1

0

不确定您是否遇到了双跳问题,但听起来您确实遇到了。所以我想给你更多关于它的信息。Bob Loblaw 版本。

什么是服务器,什么是客户端?接受事物的服务器是您远程访问的计算机。客户端,它提供的东西,是你用来进行远程处理的计算机。所以在命令Invoke-Command -computername xxxxxxxxxxx.edu ...中,“xxxxxxxxxxx.edu”是服务器。

根据您的描述,您似乎已经在Enable-PSRemoting服务器上运行了该命令。在服务器上启用远程处理后,您应该能够Enter-PSSession -ComputerName xxxxxxxxxxx.edu在客户端上执行并拥有交互式命令提示符。

如果您进入远程会话并执行Get-ChildItem "\\ComputerName\Share"命令将失败(出于安全原因,它会失败)。这就是双跳,因为您要从一台计算机转到另一台计算机。网络共享是另一台计算机。所以你会这样:

客户端 -> 服务器 -> 网络共享

嬉皮-Hopity

你需要设置更多的“东西”来修复双跳。首先在您的服务器上,您需要运行该命令Enable-WSManCredSSP Server,以便它接受来自客户端的凭据。其次,在您的客户端上,您需要运行该命令Enable-WSManCred -Role Client -DelegateComputer *,以便将您的凭据提供给服务器。

现在将 CredSSP 配置为提供和接受凭据,您应该已经解决了双跳。

Enter-PSSession -ComputerName Computer1 -Authentication Credssp -Credential (Get-Credential)

现在您应该能够从远程会话访问您的网络共享Get-ChildItem "\\ComputerName\Share"

希望这对您有所帮助。

PS 香蕉摊上总有钱。

于 2013-06-05T20:18:28.273 回答