Windows 11 更新后C盘空间异常减少,需通过磁盘清理工具深度扫描并勾选“Windows更新清理”和“以前的Windows安装”,手动停止服务后清空SoftwareDistribution与catroot2目录,并启用存储感知或禁用更新服务+注册表干预阻断缓存再生。

Windows 11 系统更新后 C 盘空间莫名减少 5–30GB,资源管理器显示 WindowsComponentStore 或 SoftwareDistribution 占用异常,且磁盘清理中“Windows 更新清理”项始终显示 190MB 无法删除——这说明更新缓存已损坏或被系统进程独占锁定,必须绕过图形界面限制,从服务层、文件层、策略层三路同步切入才能彻底清空。
用磁盘清理工具触发深度系统级清除
该方法调用 Windows 原生清理引擎,能识别并移除已安装更新的完整安装包、旧版系统备份(Windows.old)、传递优化残留,但必须以管理员权限执行二次扫描,否则“Windows 更新清理”项根本不会出现。
按下 Win + R → 输入 cleanmgr → 回车启动磁盘清理程序。
在驱动器选择界面中确认选中 C: → 点击“确定”开始初始扫描。
扫描完成后,先勾选“临时文件”“缩略图”“传递优化文件”,再点击“清理系统文件”按钮——这一步必须做,否则后续关键选项不可见。
再次选择 C 盘进行深层扫描,等待完成;在新列表中务必勾选“Windows 更新清理”和“以前的 Windows 安装”——前者释放 2–8GB,后者常达 10–20GB;若升级已满 30 天且无需回退,这两项可安全启用。
点击“确定” → 在弹出的确认对话框中选择“删除文件”执行清理。
手动清空 SoftwareDistribution 与 catroot2 目录
Windows Update 服务将全部补丁包存于 C:\Windows\SoftwareDistribution\Download,证书验证缓存则锁死在 C:\Windows\System32\catroot2;这两个目录长期驻留大量冗余数据,直接删除可释放数 GB,但必须先停止服务解除文件占用,否则会提示“访问被拒绝”且删不干净。
右键“开始”按钮 → 选择“Windows 终端(管理员)”。
依次输入以下命令并回车:
net stop wuauserv
net stop bits
net stop appidsvc
net stop cryptsvc
执行路径切换与强制清除:
cd /d C:\Windows\SoftwareDistribution
del /f /s /q Download
ren C:\Windows\System32\catroot2 catroot2_old
注意:ren 命令不是删除而是重命名,避免系统重启时因 catroot2 缺失报错;下次开机 Windows 会自动重建该目录。
重启服务:
net start wuauserv
net start bits
net start appidsvc
net start cryptsvc
通过存储感知实现自动周期清理
存储感知是 Win11 内置的智能清理机制,可按设定周期自动扫描并移除过期更新缓存,避免人工遗漏。它不依赖用户主动操作,只要开启并配置正确,后续每次开机都会静默清理临时更新文件。
第一步:Win + I → 进入【系统】→【存储】→ 将“存储感知”开关设为开启。
第二步:点击【配置存储感知或立即运行】→ 在“运行存储感知”下拉菜单中选择每天。
第三步:向下滚动至“临时文件”区域 → 勾选【删除我的临时文件】→ 设置保留时间为1 天后。
第四步:返回存储主页面 → 点击【临时文件】→ 手动勾选Windows 更新清理 → 点击【删除文件】完成首次触发。
禁用更新服务并清除残留策略
如果反复清理后缓存仍自动再生,说明 Windows Update 服务仍在后台下载新补丁。必须同步禁用服务+屏蔽策略+注入注册表键值,从根源阻断更新行为,否则刚清完的空间几分钟内就会被新缓存填满。
方法一:服务禁用
Win + R → 输入 services.msc → 回车。
找到三项服务:Windows Update(wuauserv)、Background Intelligent Transfer Service(BITS)、Update Orchestrator Service(UsoSvc)。
对每一项右键→【属性】→ 启动类型设为禁用 → 若状态为“正在运行”,先点【停止】→ 切换到【恢复】选项卡 → 将第一、二、三次失败操作全部设为无操作 → 点击【确定】。
方法二:注册表干预(家庭版必需)
Win + R → 输入 regedit → 以管理员身份运行。
导航至:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows。
右键【Windows】→ 新建 → 【项】→ 命名为 WindowsUpdate。
在 WindowsUpdate 下新建项命名为 AU。
在 AU 右侧空白处右键 → 新建 → 【DWORD (32位) 值】→ 命名为 NoAutoUpdate。
双击该值 → 基数选“十进制”→ 数值数据填入 1 → 点击【确定】。

















