系统文件完整性校验(SFC/DISM)的原理
讲清 SFC 与 DISM 各自校验什么(系统文件 vs 映像组件库),使用顺序与失败时的常见原因,以及什么时候该用。
结论先行
SFC 比对当前系统文件与基线副本,发现损坏就替换,修的是「已部署的系统文件」;DISM 修的是「Windows 组件存储(映像层)」——SFC 要替换文件时得从这个存储拿原件,存储本身坏了 SFC 就会失败。所以正确顺序是「先 DISM 修映像、再 SFC 修文件」,且都要管理员权限。
两层各管什么
| 工具 | 校验对象 | 修复动作 |
|---|---|---|
| SFC | 已部署的系统文件 | 用存储里的原件替换损坏件 |
| DISM | 组件存储(映像) | 修复存储本身 |
SFC 报「无法修复某文件」而 DISM 也提示存储有错时,先
DISM /RestoreHealth,再跑 SFC;两个都修不好且要在线修复,对照 WePE 条目 的离线修复条目。
使用顺序与命令
管理员运行 PowerShell / CMD:
DISM /Online /Cleanup-Image /RestoreHealth
SFC /Scannow
- 先 DISM 后 SFC,顺序反了可能白跑。
- 各版本命令与入口略有差异,对照 Win10 22H2 条目 或 Win11 24H2 条目。
- 仍失败:多为离线环境或源文件缺失,进 PE 用安装介质离线修(对照 搜索入口 找「离线修复」条目)。
- 全程管理员权限,普通用户跑会直接报错。