1

我如何编写一个在 64 位远程 powershell 可执行文件上打开和运行 cmdlet 的 powershell 脚本。

我很难找到任何资源、示例或教程来展示如何编写连接到远程服务器的 powershell 脚本、打开 64 位 Powershell.exe 并从中运行 cmdlet。我将从 32 位机器上运行这个脚本。如果有人有任何例子或想法?

更新:

我发现我可以在远程机器上先执行一个受信任的主机命令并启用 remote-ps

Enable-PSRemoting
cd wsman:
cd localhost\client
set-item trustedhosts *

这样做之后,我尝试连接到我的服务器

Enter-PSSession servername

给出这个错误

The following error occured while using Kerberos authentication: The network path was not found.
4

1 回答 1

0

如果 64 位计算机配置了 PowerShell 远程处理,则默认 PowerShell 端点将是 64 位。还注册了一个 x86 端点,但这不是默认值。

关于更新的问题,您处于什么类型的环境中?工作组还是域?

如果你在一个域中,事情会简单一些。如果双方都启用了 PowerShell 远程处理(通过 Enable-PSRemoting),您应该能够按照您的尝试输入-PSSession 服务器名。您是否拥有远程计算机的管理权限?

由于 Kerberos 失败,您可以使用 -Authentication 参数指定其他身份验证类型。有效选项为 NTLM、CredSSP 和 Kerberos。默认值为 Negotiate,它可能使用 Kerberos 或 NTLM。

您可以使用 -Credential 参数指定特定凭据。

关于 Kerberos 错误,您可能需要检查主机是否注册了正确的 SPN。

Don Jones 和 Tobias Weltner 撰写了一份很棒的 PowerShell 远程处理指南 -在这里找到 它介绍了 PowerShell 远程处理的许多配置方案。

于 2012-09-21T16:41:06.453 回答