Windows 更新报 0x80073b01,我是这样帮他排查的

9次阅读
没有评论
帮朋友处理 Windows 更新失败的角度,说说从系统文件修复、组件存储修复、重置更新缓存,到原版 ISO 就地升级修复的排查流程。

朋友找我说,Windows 更新又出问题了。

错误码是:

text
0x80073b01

他说自动更新不行,单独下载补丁也不行。每次看着像是在安装,最后又报错退回来。

这种情况我一般不会一上来就建议重启甚至重装系统。

Windows 更新失败,背后可能是系统文件损坏、组件存储异常、更新缓存坏掉、更新服务状态不正常,也可能是系统版本本身已经比较乱。真正处理时,最好按从轻到重的顺序来。

Windows 更新报 0x80073b01,我是这样帮他排查的
先给结论
  • 先不要急着重启电脑。
  • 更不要直接就重装系统
  • 先用 `sfc` 检查系统文件。
  • 再用 `DISM` 修复系统组件存储。
  • 然后停止更新服务,重命名更新缓存目录。
  • 重启服务和电脑后再检查更新。
  • 如果还不行,再考虑用微软原版 ISO 做就地升级修复。

这套流程不能保证解决所有 Windows 更新错误码,但遇到更新组件损坏、缓存异常、系统文件不完整时,经常能救回来。

第一步:先确认现象,不要只盯错误码

我会先问几个问题:

  1. 是所有更新都失败,还是某个补丁失败?
  2. 自动更新失败,手动下载补丁是否也失败?
  3. 最近有没有断电、强制关机、清理系统、删过 Windows 目录?
  4. C 盘空间是否还够?
  5. 系统是不是精简版、修改版,或者长期没更新?

如果只是某个补丁失败,可能是补丁本身或版本依赖问题。如果所有更新都失败,而且手动补丁也不行,就更像是系统更新组件或缓存出了问题。

朋友这个情况,自动更新和手动补丁都失败,所以我按系统组件方向排。

第二步:用 SFC 检查系统文件

先用管理员身份打开 CMD。

执行:

cmd
sfc /scannow

这个命令会检查受保护的系统文件,并尝试修复损坏内容。

跑这个命令时不要急,中途可能会停在某个百分比一会儿。等它完整结束,再看结果。

常见结果大概有几类:

  • 未发现完整性冲突。
  • 发现损坏文件并成功修复。
  • 发现损坏文件但无法修复部分内容。

如果提示修复成功,可以先重启一次,再试 Windows 更新。如果提示无法修复,就继续走 DISM。

Windows 更新报 0x80073b01,我是这样帮他排查的
第三步:用 DISM 修复组件存储

Windows 更新依赖系统组件存储。组件存储乱了,更新就容易反复失败。

继续在管理员 CMD 里执行:

cmd
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth

简单理解:

  • `CheckHealth`:快速检查有没有已知损坏。
  • `ScanHealth`:更完整地扫描组件存储。
  • `RestoreHealth`:尝试修复。

其中 RestoreHealth 时间可能比较长,网络慢、系统状态差时更明显。不要看到进度卡住就直接关窗口。

DISM 跑完后,我通常会再跑一次:

cmd
sfc /scannow

因为 DISM 修的是组件存储,SFC 可以再用修好的组件去检查系统文件。

第四步:停止 Windows 更新相关服务

如果系统文件和组件存储修过后,更新还是失败,就开始处理更新缓存。

先停止几个相关服务:

cmd
net stop wuauserv
net stop cryptSvc
net stop bits
net stop msiserver

这几个服务大致对应 Windows 更新、加密服务、后台智能传输、安装服务。

如果提示某个服务停不掉,不要硬来。可以先重启电脑,再立刻用管理员 CMD 执行。也可以确认当前没有 Windows 更新窗口正在运行。

第五步:重命名更新缓存目录

Windows 更新缓存损坏时,系统可能会一直拿坏缓存反复尝试。

我一般不直接删除,而是重命名旧目录:

cmd

ren C:\Windows\SoftwareDistribution SoftwareDistribution.old

ren C:\Windows\System32\catroot2 Catroot2.old

这样做的好处是:旧缓存先留着,系统后面会重新生成新的目录。

如果命令提示目录正在使用,多半还是相关服务没停干净,或者系统正在后台处理更新。先重启,再重复上一段停止服务的操作。

第六步:重新启动服务,再检查更新

缓存目录处理完,再把服务启动回来:

cmd
net start wuauserv
net start cryptSvc
net start bits
net start msiserver

然后重启电脑。

重启后再去 Windows 更新里检查。

这一步如果能正常更新,基本就说明问题出在更新组件状态或缓存目录上。

第七步:还不行,再考虑原版 ISO 就地升级修复

如果上面都做了,还是报 0x80073b01,再考虑原版 ISO 就地升级修复。

简单说,就是下载和当前系统对应的 Windows 原版镜像,挂载 ISO 后运行:

text
setup.exe

安装过程中选择保留个人文件和应用。

它不是直接格式化重装,而是用一套完整的系统安装文件重新修复当前系统。对很多系统组件损坏、长期更新异常、版本状态混乱的问题,比单独修缓存更有力。

但这一步比前面的命令风险更高,所以我会让朋友先做准备。

Windows 更新报 0x80073b01,我是这样帮他排查的
操作前提醒

第一,备份重要文件。

桌面、文档、下载、微信文件、浏览器书签,至少先备一份。虽然就地升级修复可以选择保留文件和应用,但只要涉及系统修复,就不要赌。

第二,笔记本接电源。

升级过程中断电,问题会比更新失败更麻烦。

第三,预留 C 盘空间。

空间太少,升级修复中途也可能失败。

第四,尽量使用微软原版镜像。

不要随便找第三方精简版、修改版镜像。系统本来就更新异常,再叠加不明镜像,只会更难排查。

第五,记录当前错误码和已执行步骤。

如果后面还失败,至少知道前面做过什么,不用来回重复。

小结

这次我给朋友的处理顺序是:

text
1. 确认错误码和失败范围
2. sfc /scannow 检查系统文件
3. DISM 修复组件存储
4. 停止 Windows 更新相关服务
5. 重命名 SoftwareDistribution 和 catroot2
6. 重启服务并重启电脑
7. 仍失败,再用原版 ISO 做就地升级修复

Windows问题不要一上来就重装,能按顺序修,就先按顺序修。
能保留文件和应用,就不要轻易格式化。
但到了 ISO 就地修复这一步,备份一定要先做。

正文完
 0
Ticifer
版权声明:本站原创文章,由 Ticifer 于2026-07-21发表,共计2510字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)