为远程服务器运行WinRM quickconfig

时间:2018-08-15 17:48:52

标签: powershell-remoting psexec invoke-command winrm

我正在编写一个PowerShell脚本,该脚本从文件中读取主机列表。我尝试了两种单独的方法,但都遇到问题。

第一种方法

$WinRM = Invoke-Command -Computer $server -ScriptBlock { WinRM quickconfig }

这在某些主机上给出以下错误消息:

WSManFault
    + CategoryInfo          : NotSpecified: (WSManFault:String) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError
    + PSComputerName        : svclebetapool01.lehi.micron.com

    Message = Access is denied. 
Error number:  -2147024891 0x80070005
Access is denied. 

第二种方法

$WinRM = C:\PSTools\PsExec.exe \\$server -s winrm.cmd quickconfig -q

这会将$WinRM设置为退出代码(成功执行时为1)。如果我使用>>>重定向输出,那么它将显示PsExec版权。我正在寻找由WinRM quickconfig命令创建的确切消息,以便我知道如何在不同情况下进行处理。

1 个答案:

答案 0 :(得分:0)

如果您打算启用PowerShell远程处理,则可以

C:\PSTools\PsExec.exe \\$server PowerShell.exe -c "Enable-PSRemoting -Force"

wmic /node:$Server process call create "PowerShell.exe -c 'Enable-PSRemoting -Force'"