我们在域环境中设置了 Windows Server Update Services (WSUS)。它已配置并正常运行。我们偶尔会遇到一个问题,Windows Update 会丢失/忘记设置,并在夜间在线获取更新。我们通过更改注册表禁用 Windows Update 来解决这个问题:
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" /v NoAutoUpdate /t REG_DWORD /d 1 /f
如果丢失策略,这将阻止 Windows 更新自动运行。
此后,我们已将其添加到我们在所有新 PC 上运行的新 PC 批处理文件中。我们注意到这些新计算机没有向 WSUS 服务器报告。似乎如果我打开计算机并手动启动 Windows 更新,它会找到服务器并执行操作。
有没有什么办法可以让所有 PC 都“检查更新”,以便它们都在我们的 WSUS 服务器上收到报告并开始接收更新?
谢谢!
答案1
您可能会发现使用组策略设置适当的 WSUS 服务器更加有效和方便;您可以Computer Configuration > Administrative Templates > Windows Components > Windows Update
主要使用 下的设置创建一个组策略对象Specify intranet Microsoft update service location
,但也可以创建您希望的 Windows 更新部分中的任何其他选项,例如何时安装计划的更新等 - 请查看它们是否适用。
这样做的好处是;
- 解决您上述关于设置“丢失”的担忧;组策略将应用于每台(适用)机器的每次登录,从功能上减轻了设置“丢失”的可能性
- 在将来的某个时候,您可能会发现对哪些计算机使用哪些 WSUS 服务器进行更精细的控制会很有利,例如如果您有多个站点,每个站点都有自己的 WSUS 服务器。
然后,您可以设置此 GPO 的安全设置,以使其全部应用于所有计算机(这是新 GPO 的默认设置),并将其链接到您的 AD 结构中,以便它适用于您希望使用相关 WSUS 服务器的所有计算机。
答案2
您需要停止并启动服务 WUAUSERV 以手动触发更新。
本地机器上的命令行:
net stop wuauserv
net start wuauserv
远程计算机上的命令行:
sc \\<hostname remotemachine> stop wuauserv
sc \\<hostname remotemachine> start wuauserv
编辑:
您可以从中央机器通过脚本强制所有客户端执行此操作:
sc \\pc01 stop wuauserv
sc \\pc01 start wuauserv
sc \\pc02 stop wuauserv
sc \\pc02 start wuauserv
答案3
要将当前更新状态报告给您运行的 WSUS(从客户端的命令行):
wuauclt /reportnow
这会向 WSUS 报告机器,包括当前安装的更新。
请注意,这不会搜索新的更新。要触发搜索,请运行:
wuauclt /detectnow