如何通过PS远程会话在服务器核心上启动Windows Update?


8

当我通过Windows Server 2012 R2 Core计算机上的远程桌面登录时,可以通过运行sconfig.cmd触发Windows更新。但是,在PS远程会话中调用它时,此操作将失败:

Enter-PSSession -ComputerName server2

这就是sconfig抱怨的地方。它基本上说它找不到特定的注册表值。有趣的是,Microsoft选择VBScript而不是PowerShell来对该CLI接口进行编程。

[server2]: PS C:\> sconfig

C:\>echo off
sconfig : FEHLER: Der angegebene Registrierungsschl?ssel bzw. Wert wurde nicht gefunden.
    + CategoryInfo          : NotSpecified: (FEHLER: Der ang...nicht gefunden.:String) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError

Microsoft (R) Windows Script Host, Version 5.8
Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

System wird ?berpr?ft...

[...]

14) Server herunterfahren
15) Zur Befehlszeile wechseln

C:\Windows\System32\de-DE\sconfig.vbs(326, 1) Laufzeitfehler in Microsoft VBScript: Eingabe hinter Dateiende.

通过PS远程会话登录时,如何/应该如何启动Windows Update?


2
我没有读德语,但这是“权限/访问被拒绝”消息吗?事实是,没有SCCM或WSUS之类的远程安装Windows Update真是太痛苦了。我所见过的每一种有效的方法,都依赖PSexec(或类似方法)在本地执行命令,但要从远程计算机执行。我想在没有SCCM的情况下需要做这种事情时,我最终会使用WuInstall或BatchPatch。Technet上也有一些PowerShell模块可能会用到这种东西,根据我的经验,它们非常容易出错。主要是小姐。
HopelessN00b 2014年

3
哦,差点忘了。我见过的最好的免费,非试用/免费应用程序,用于在没有SCCM / WSUS / etc的情况下远程安装Windows Update。是PoshPAIG,并且Scripting Guy上有一篇博客文章,您可能想看看。它并不是您要找的东西,但是它与您自己想要的差不多,而且不需要滚动。
HopelessN00b 2014年


@Zoredache但是那里的答案很烂。您的情况要好得多,我不会投票赞成仅凭此理由将其关闭。
HopelessN00b 2014年

Answers:


7

您实际上无法直接在Winrm / Winrs上触发该事件。

存在一种从Powershell执行Windows更新的颇受欢迎的 Powershell 模块,并且要在远程系统上执行更新,它实际上将模块复制到远程系统并在远程系统上安排新的一次性任务。

在invoke-WUInstall.ps1文件中,它具有有关远程触发更新的注释。

使用Invoke-WUInstall远程调用Windows Update安装。它基于TaskScheduler,因为无法从远程计算机-E_ACCESSDENIED调用CreateUpdateDownloader()和CreateUpdateInstaller()方法。


1

所有人都为最后评论的发布者致敬。有用。

pswidowsupdate从网上获取文件并解压缩。然后导入模块并运行此代码(该invoke-wsuinstall.ps1文件具有示例代码,但是我从中删除了一点,它仍然可以工作):

$Script = {Get-WUInstall -AcceptAll -AutoReboot | Out-File C:\PSWindowsUpdate.log}
Invoke-WUInstall -ComputerName computername -Script $Script
Get-Content \ \ computername\c$\PSWindowsUpdate.log
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.