使用 DISM 清理 WinSxS 文件夹

前言

Windows 更新后,都会将旧组件存放到 WinSxS 文件夹,尽管 Windows 会自动定期清理,但是在空间告罄时可以手动清理以释放更多的系统盘空间
WinSxS 文件夹位于 Windows 文件夹中,例如 C: \Windows\WinSxS。 它是 Windows 组件存储文件的位置。 Windows 组件存储用于支持自定义和更新 Windows 所需的函数。
删除 WinSxS 文件夹中的文件或删除整个 WinSxS 文件夹可能会严重损坏系统,导致你的计算机可能无法启动,并且无法进行更新。

确定 WinSxS 文件夹的实际大小

按下 WIN + X 以打开“高级菜单”,选择“终端管理员”,“Windows PowerShell (管理员)”或“命令提示符(管理员)”
随后输入以下命令并按下 Enter 以回车

1
Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore

执行之后示例的内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
C:\Windows\System32>Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore

部署映像服务和管理工具
版本: 10.0.xxxxx.x

映像版本: 10.0.xxxx.x

[==========================100.0%==========================]

组件存储(WinSxS)信息:

Windows 资源管理器报告的组件存储大小 : 15.45 GB

组件存储的实际大小 : 14.77 GB

已与 Windows 共享 : 7.95 GB
备份和已禁用的功能 : 6.82 GB
缓存和临时数据 : 0 bytes

上次清理的日期 : 2025-11-11 22:18:28

可回收的程序包数 : 1
推荐使用组件存储清理 : 是

操作已成功完成。

清理前的 WinSxS

以下是输出中提供的信息:

标题 说明
Windows 资源管理器报告的组件存储大小 Windows 资源管理器计算的 WinSxS 文件夹的大小值。 此值不会考虑 WinSxS 文件夹中使用的硬链接。
组件存储的实际大小 此值考虑 WinSxS 文件夹中的硬链接。 它不会排除通过硬链接与 Windows 共享的文件。
与 Windows 共享 此值提供使用硬链接的文件的大小,这些文件使用硬链接以便同时显示在组件存储和其他位置(为便于正常操作 Windows)中。 这包含在实际大小中,但不应视为组件存储开销的一部分。
备份和禁用的功能 这是为响应更新组件中的故障或提供启用更多功能的选项而保留的组件的大小。 它还包括组件存储元数据和并行组件的大小。这包含在实际大小中,是组件存储开销的一部分。
缓存和临时数据 这是组件存储在内部用于加快组件服务操作速度的文件的大小。 这包含在实际大小中,是组件存储开销的一部分。
上次清理日期 这是最近完成组件存储清理的日期。
可回收包数 这是组件清理可以删除的系统中被取代包的数量。
建议的组件存储清理 这是组件存储清理建议。 如果执行清理过程可以减少组件存储开销的大小,则建议进行清理。

在此示例中,WinSxS 文件夹看上去为 15.45 GB,但实际开销(备份和禁用功能的大小与缓存和临时数据的大小之和)为 6.82 GB。

清理 WinSxS 文件夹

如果“推荐使用组件存储清理”为“是”,或者你自己想清理的话,可以执行以下命令进行清理。清理是安全的,但是速度稍微缓慢,不会损坏系统

1
Dism.exe /Online /Cleanup-Image /StartComponentCleanup

清理 WinSxS

清理完成后再次使用 Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore 命令可以查看清理后的占用

清理前后 WinSxS

清理之后的示例如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
C:\Windows\System32>Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore

部署映像服务和管理工具
版本: 10.0.xxxxx.x

映像版本: 10.0.xxxx.x

[==========================100.0%==========================]

组件存储(WinSxS)信息:

Windows 资源管理器报告的组件存储大小 : 11.87 GB

组件存储的实际大小 : 11.52 GB

已与 Windows 共享 : 7.95 GB
备份和已禁用的功能 : 3.57 GB
缓存和临时数据 : 0 bytes

上次清理的日期 : 2026-02-14 13:26:18

可回收的程序包数 : 0
推荐使用组件存储清理 : 否

操作已成功完成。

即可看到,WinSxS 文件夹从 15.45 GB 减少到了 11.52 GB,实际开销(备份和禁用功能的大小与缓存和临时数据的大小之和)从 6.82 GB 减少到了 3.57 GB。

定时任务清理 WinSxS 文件夹

StartComponentCleanup 任务会在系统未使用时自动清理组件。 自动运行时,该任务将在更新的组件安装之后等待至少 30 天,然后再卸载该组件的先前版本。如果选择运行此任务,则该任务将有 1 小时的超时,并且可能无法完全清除所有文件。

按下 WIN + R 打开“运行”,输入 taskschd.msc 并按下 Enter 以回车来打开“任务计划程序”
找到如下路径:任务计划程序库 > Microsoft > Windows > Servicing > StartComponentCleanup
然后,点击旁边的“运行”即可开始清理

此外,以下命令也可以直接调用这个定时任务

1
schtasks.exe /Run /TN "\Microsoft\Windows\Servicing\StartComponentCleanup"

重设基准版本地清理 WinSxS 文件夹

使用 /ResetBase 参数会极大地消耗时间,并清理所有的旧组件,并导致不能卸载任何在此之前安装的更新

1
Dism.exe /Online /Cleanup-Image /StartComponentCleanup /ResetBase

后记

管理组件存储 | Microsoft Learn
清理 WinSxS 文件夹 | Microsoft Learn
确定 WinSxS 文件夹的实际大小 | Microsoft Learn