在清理 C 盘空间时,许多用户会被一个名为 WinSxS 的文件夹吓一跳。它往往占用着 10GB 甚至更多的空间,看起来像是可以随意丢弃的垃圾文件。但请住手! 直接删除它可能会导致系统崩溃。
WinSxS 全称是 Windows Side-by-Side,位于 C:\Windows\WinSxS 目录下。它并非普通的临时文件或缓存,而是 Windows 操作系统的核心组件存储库。
绝对不能直接手动删除 WinSxS 文件夹或其内部文件! 强行删除会导致 Windows 无法更新、无法启动,甚至必须重装系统。
很多用户通过右键点击“属性”查看 WinSxS 文件夹时,会发现它占用了惊人的空间(例如 20GB+)。但这其实是一个视觉假象。
什么是硬链接?
Windows 为了节省空间并保证系统稳定性,使用了硬链接技术。
原理:同一个物理文件数据,在硬盘上只存一份,但在文件系统中可以有多个“入口”(路径)。
现象:C:\Windows\System32 中的某个系统文件,实际上可能只是指向 WinSxS 中真实文件的一个“快捷方式”(硬链接)。
当你右键查看属性时,资源管理器会把所有指向该文件的“入口”大小都累加一遍,导致显示的大小远大于实际占用的物理空间。
如何查看真实大小?
只有通过微软官方的 DISM 工具 才能计算出扣除硬链接后的实际物理占用。
虽然不能直接删除,但随着系统更新,WinSxS 中确实会积累一些过时的旧版本文件(如被新补丁替换掉的旧补丁)。我们可以通过官方命令安全清理这些垃圾。
方法一:标准清理(推荐大多数用户)
此方法会删除已被新版本取代的旧组件,释放空间,但保留卸载当前更新的能力。
在搜索栏输入 PowerShell,右键选择 “以管理员身份运行”。
输入以下命令并回车:
dism.exe /online /Cleanup-Image /StartComponentCleanup
等待进度条走完(可能需要几分钟),重启电脑即可。
方法二:彻底重置(慎用!)
此方法会删除所有被取代的组件版本,包括当前安装的更新包备份。清理后,你将无法卸载任何已安装的 Windows 更新。如果新更新导致问题,只能重装系统。
同样以管理员身份运行 PowerShell 输入以下命令并回车:
dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase
Q1:我可以使用第三方清理软件(如 XX 管家、XX 卫士)清理 WinSxS 吗?
A: 谨慎使用。正规的清理软件通常也是调用上述的 DISM 接口进行清理,相对安全。但如果软件声称能“深度粉碎”WinSxS 文件,请务必拒绝,这极大概率会破坏系统完整性。
Q2:为什么我清理完后,文件夹大小看起来没变?
A: 如前所述,右键看到的大小包含硬链接的重复计算,通常不会明显减小。要验证清理效果,请再次运行分析命令:
dism.exe /Online /Cleanup-Image /AnalyzeComponentStore
查看报告中的 "Actual Size of the Component Store"(组件存储的实际大小) 这一项,这才是真实的物理占用。
Q3:WinSxS 会无限增长吗?
A: 不会。Windows 10/11 有自动维护机制,会在系统空闲时尝试清理。但由于触发条件严格(如需接通电源、空闲时间长等),往往清理不及时,因此建议每 3-6 个月手动执行一次标准清理。