如何使用 Powershell 在 10 台 Windows 2016 服务器上远程启动 Windows 更新

如何使用 Powershell 在 10 台 Windows 2016 服务器上远程启动 Windows 更新

我有 10 台加入域的 Windows 2016 服务器。我需要在这些服务器上运行 Windows 更新,但我不想登录到每一台服务器上,然后手动启动 Windows 更新。

我发现你可以这样做;

Install-Module PSWindowsUpdate

但我不知道具体怎么做。

**** 更新;感谢 duenni,这是我的最终解决方案。安装 PSWindowsUpdate 模块,然后;

Set-Item WSMan:\localhost\Client\TrustedHosts –Value * -Force

$Script = {import-module PSWindowsUpdate; Get-WindowsUpdate -AcceptAll -Install -Verbose -AutoReboot | Out-File C:\PSWindowsUpdate.log}

Invoke-WUjob -ComputerName s10,s11,s12,s13,s14,s15,s16,s17,s18,s19,s20 -Script $Script -Confirm:$false -RunNow

答案1

按照发行说明(点击“包详细信息”)该命令在 2.0.0 版本中Invoke-WUInstall已被取代。Invoke-WUJob

尝试

$Script = {import-module PSWindowsUpdate; Get-WindowsUpdate -AcceptAll -Install | Out-File C:\PSWindowsUpdate.log}

Invoke-WUjob -ComputerName $computer -Script $Script -Confirm:$false -RunNow

答案2

作为 Invoke-WUInstall 的直接等效项,您实际上可以使用 Invoke-Command 调用 Get-WUInstall。

  • 确保你拥有最新的更新程序

  • 将 PowerShell 的执行策略更改为 RemoteSigned。RSEP 允许 PowerShell 脚本,只要它们由受信任的发布者签名即可。输入Set-ExecutionPolicy RemoteSigned并按 Enter。出现提示时确认。

  • 对于 PS 2.0 导入模块 PSWindowsUpdate(3.0 之后不需要)

GetWUInstall支持很多好的东西,但迄今为止最有用的是:

  • Get-WUInstall –MicrosoftUpdate –ListOnly--> 将列出 Microsoft Update 服务器提供的更新

  • Get-WUInstall –MicrosoftUpdate--> 每次更新都会询问是否安装(最近非常有用)

  • Get-WUInstall –MicrosoftUpdate –AcceptAll--> 自动接受所有

  • 添加 – AutoReboot--> 更新后也会重新启动

支持更多功能,例如隐藏、取消隐藏或安装特定 KB。您可以使用它Help Get-WUInstall –full来查看所有支持的功能。

相关内容