本文介绍如何解决阻止 Windows 更新安装的问题。
症状
尝试安装 Windows 更新时,安装会失败,并收到错误代码 0x800f0823 (CBS_E_NEW_SERVICING_STACK_REQUIRED)。 安装更新时可能会出现此问题,无论是通过直接连接到 Windows 更新还是使用脱机 MSI 文件。 若要验证此问题的详细信息,请在CBS.log文件中搜索类似于以下示例的条目(来自 Windows Server 2016):
2023-09-04 15:01:53, Error CBS Package "Package_for_KB5012170~31bf3856ad364e35~amd64~~14393.5285.1.4" requires Servicing Stack v10.0.14393.5285 but current Servicing Stack is v10.0.14393.4349. [HRESULT = 0x800f0823 - CBS_E_NEW_SERVICING_STACK_REQUIRED]
有关 CBS 日志的详细信息,请参阅 Windows 更新日志文件。
原因
此错误代码表示受影响的计算机服务堆栈已过期。 服务堆栈是安装 Windows 更新的组件。 如果发生此错误,计算机无法正确处理新更新。
通常,Windows 更新通过安装 服务堆栈更新(SSU)自动使服务堆栈保持最新状态。 但是,通过跳过更新,物理计算机或虚拟机(VM)可能会脱离同步。
决议
重要
在解决此问题之前,请备份操作系统的磁盘。 有关 VM 此过程的信息,请参阅 “关于 Azure 虚拟机还原”。
注释
如果受影响的计算机是 VM,请考虑使用 Azure 虚拟机 (VM) Windows 服务堆栈重置工具中提到的技术。
步骤 1:获取最新的 SSU
对于早期版本的 Windows,可以在 Microsoft更新目录中搜索特定的 SSU。 例如,根据所使用的操作系统,搜索以下字符串:
- Windows 10 版本 1607 和更低版本: ssu “Windows 10”
- Windows Server 2016: ssu “Windows Server 2016”
确定具有最新发布日期的更新。
注释
还可以通过查看 MSRC 服务堆栈更新 页来验证这些 Windows 版本的最新 SSU。 在“常见问题”列表中,查找以下问题:
“每个版本的 Microsoft Windows 的最新 SSU 何时发布?
对于更高版本的 Windows 和 Windows Server,安全更新包括 SSU 和最新的累积更新(LCU)。 在尝试查找目录中所需的安全更新之前,请使用更新历史记录列表来标识相应的 KB 编号。 下表提供了指向这些列表的链接。
| Windows 版本 | 更新历史记录 |
|---|---|
| Windows Server 2025,所有版本 | Windows Server 2025 更新历史记录 |
| Windows Server 2022,所有版本 | Windows Server 2022 更新历史记录 |
| Windows 11,所有版本 | Windows 11 更新历史记录 |
| Windows 10 版本 2004 及更高版本 | Windows 10 更新历史记录 |
| Windows 10 版本 1809 和 Window Server 2019(所有版本) | Windows 10 和 Windows Server 2019 更新历史记录 |
找到所需的更新后,在Microsoft更新目录中搜索更新的 KB 编号。
注释
更新的知识库文章的文本可能通过使用不同于主项目编号的 KB 编号来引用其关联的 SSU。 但是,在目录中,只能搜索主文章的 KB 编号。 目录没有这些 SSU 编号的单独条目。
步骤 2:下载并安装更新
通常,您的更新搜索结果中包含多个对应单个 KB 编号的更新。 检查更新标题以确定适用于受影响计算机的体系结构的更新。 选择 “下载 ”,将相应的文件下载到受影响的物理计算机或 VM。 安装更新后,重启物理计算机或 VM。
步骤 3:安装失败的更新
请重试安装原始更新。
后续步骤
解决问题后,监视计算机的更新状态,确保计算机保持最新状态。
如果问题仍然存在,请联系Microsoft支持部门获取进一步帮助。 将任何相关CBS.log数据的副本附加到支持请求。