DISM清理WinSxS是释放C盘空间最有效且安全的方式,通过移除过时组件、残留功能和冗余语言包,通常可腾出5–30GB;需先执行ScanHealth、RestoreHealth和AnalyzeComponentStore检查系统健康与冗余程度,再依次进行常规清理(/StartComponentCleanup)或深度清理(加/ResetBase参数),并可选清理语言包、更新缓存及Windows.old。
用 dism 清理 windows 组件库(winsxs)是释放 c 盘空间最有效、也最安全的方式之一。它不删系统核心文件,而是移除已被新补丁替代的旧组件副本、已卸载功能残留、冗余语言包等,通常能腾出 5–30 gb 空间。
先检查状态,再动手清理
打开“命令提示符(管理员)”或“Windows PowerShell(管理员)”,依次执行以下命令:
- DISM /Online /Cleanup-Image /ScanHealth —— 检查系统映像是否健康;
- DISM /Online /Cleanup-Image /RestoreHealth —— 自动修复损坏组件(如有);
- DISM /Online /Cleanup-Image /AnalyzeComponentStore —— 查看 WinSxS 当前冗余程度,包括可清理空间预估。
只有显示“未检测到问题”或“分析完成”后,才建议继续清理。
常规清理:保留回滚能力
这是最推荐、最稳妥的清理方式,只删除已安装更新中过时的旧版本组件,不影响系统还原和更新回退:
- 运行:DISM /Online /Cleanup-Image /StartComponentCleanup
- 过程耗时几分钟到十几分钟,完成后提示“操作成功完成”;
- 无需重启,清理后即可看到 WinSxS 占用明显下降。
深度清理:释放更多空间(不可逆)
加上 /ResetBase 参数,会清除所有旧版组件引用,让系统彻底“认准当前版本”,释放更多空间,但也会导致:
- 无法卸载已安装的 Windows 更新;
- 依赖这些更新的系统还原点将失效;
- 建议在确认系统稳定运行至少 72 小时后再执行。
命令为:DISM /Online /Cleanup-Image /StartComponentCleanup /ResetBase
按需清理其他冗余内容
如果还占用较多空间,可针对性补充以下操作:
- 清理语言包:用 DISM /Online /Get-Languages 查看已安装语言,对非默认语言执行 DISM /Online /Remove-Package /PackageName:xxx;
- 清空更新缓存:停止 Windows Update 服务后,手动删除 C:\Windows\SoftwareDistribution\Download 内容;
- 删除 Windows.old:若升级后已正常使用超 10 天,可用磁盘清理工具勾选“以前的 Windows 安装”来安全移除。
不复杂但容易忽略。关键在于顺序:先扫描修复,再常规清理,最后按需深度处理。











