我该如何消除 C:\Windows\Installer 中巨大的缓存 MSI 文件?

我该如何消除 C:\Windows\Installer 中巨大的缓存 MSI 文件?

的大小MSI 缓存文件夹C:\Windows\Installer) 已经大幅增长,现在占用了我(域)计算机上太多的磁盘空间。这个文件夹可以删除或者缩小吗?

同样的问题也适用于:

  • C:\WINDOWS\WinSxS%SystemRoot%\WinSxS
  • C:\System32\DriverStore%SystemRoot%\System32\DriverStore

答案1

概括

目录%SystemRoot%\Installer并且其内容绝不能被干扰。几乎总是会导致系统无法使用。同样温斯驱动程序商店&广汽

使用行政设施(请浏览链接答案)是一种通用措施,可以减少%SystemRoot%\Installer用于未来部署的文件夹。通常用于企业部署Essentially a file extraction of installation source that you put on a network share

  • Administrative installs can drastically reduce the size of the local cache folder
  • Must be done per package, 你呢need a stable, always on network share(或stable local path / drive)。
  • 参见底部部分"Administrative Installation"

常规磁盘空间提示

真正的问题是磁盘空间-SSD drives仍然太小,不太舒适。以下是一些建议程序,您可以使用这些程序以更安全的方式重新获得空间。


原始&长答案

以下是从这个原始而混乱的答案中总结出的必要/最有效的选项:琐事与技巧:释放系统驱动器上的磁盘空间的明显方法(长的)。

微软关于太空回收的文章:在 Windows 10 中释放驱动器空间


快递:紧急 5 分钟空间回收

  1. 贮存:插入USB驱动器(如果你想要永久连接,则可以使用低调)或SD卡. 移动您的DownloadsLargest Media folders在那里。使用USB 3.X port!(蓝色 / 红色 / 青色)。
  2. 蒙格斯横扫:在 Windows 资源管理器中,选择"Users folder"(C:\Users),按F3并选择"Size: Gigantic"(或非常大)。如果发现,请将其移走 - 小心:
    • 通常ISOsVirtualsMovie filesetc...
    • 小心:Outlook PST filesDatabase files
    • 别管:全部*.SYS文件!
    • 避免source code foldersvirtual disks(仅移动整个文件夹)!
    • 简而言之:Move only files you know are safe to move!
  3. Zap 可以重新下载文件吗?(许多大文件很容易被重新获取)
    • iTunes?ISOs?Installers(在Downloads
    • Zap clouded files?(本地缓存)

下面还有许多其他选项。仅介绍我自己使用的 5 分钟紧急程序(简单选项)。

当然,还可以清空回收站 :-)。还可以快速卸载大型、未使用的软件包。

并检查 C:\ 根目录中是否存在虚拟文件和类似用途。不过,大多数大型文件应该位于配置文件层次结构中。


回收磁盘空间 - 实用选项

推荐用于磁盘空间回收的实际快速选项:

薄型 USB 和 SD 卡

  • 一般的Removables & Disc Space Visualization

    • 添加low-profile USB drive和/或SD-Card为您的笔记本电脑提供“永久”的额外存储空间,用于移动大文件。通常速度不高,请酌情使用。笔记!我发现低配置 USB 驱动器在负载下可能会有点热。在我看来,不适合高强度、连续使用。
    • Find Space Hogshttps://en.wikipedia.org/wiki/WinDirStat. 磁盘空间消耗的可视化工具。在非 SSD 磁盘上可能运行缓慢。显示哪些内容占用了磁盘空间。
  • 选项 0Clouding。 明显地。OneDriveDropboxGoogle Drive, ETC...

  • 选项 2Microsoft's Disk Cleanup Tool. 清除 Windows 更新文件等等。

    • Windows Key+ 点击R,输入cleanmgr.exe然后按Enter
    • 选择系统驱动器并按OK
    • 现在点击Clean up System Files然后选择系统驱动器并按OK
  • 更新日期:2018 年 10 月:微软已添加“下载“文件夹作为清理选项!这简直是疯了,不启用!它会毫无疑问地删除整个下载文件夹。

还有一个更新:

笔记:在最近的 Windows 10 版本中cleanmgr.exe工具已被弃用并被新的 Windows 10 设置应用取代。输入:ms-settings:storagesense在开始对话框中打开新的 GUI。开始对话框通过以下方式打开:Windows Key+ 点击R

  • 选项 7: 整理Downloads文件夹(所有用户)。
    • 将文件移动到 USB/SD/其他分区。
    • 更改默认下载位置:Right Click Folder => Properties => Location
    • 所有用户共享一个位置 - 如果适用?
  • 选项 18Compression(选择文件夹?)。在文件夹属性中. 对于旧磁盘来说可能会非常慢。
  • 选项 19Uninstall unnecessary software。 跑步appwiz.cpl来自Windows Key+ 点按R

高风险选择:删除过期和废弃的恢复分区并在其位置创建可用分区以保存数据。

亚军Option 4: Administrative Installation如下所示。也可以检查Option 3: (CCleaner)(并非没有风险)。最后要提的是:你可以关闭系统还原也一样(特别是对于虚拟的)。链接答案中未列出(最大长度)。


清理/让 WinSxS 节食

温斯文件夹 -Win32 并行程序集存储充满了硬链接(指向同一“物理”文件的多个快捷方式),并且经常包含永远无法使用的过时版本(被策略和更新取代)。您可以运行“清除“——并行 Win32 程序集的垃圾收集。

查找实际尺寸“自 Win 8.1 以来可用的命令(从提升的命令提示符):

Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore  

这超越了其中的所有硬链接,并找到了 WinSxS 文件夹的实际大小 - 以及是否应该清理它。

运行“清除”(从提升的命令提示符):

 Dism.exe /online /Cleanup-Image /StartComponentCleanup

Microsoft 的磁盘清理工具:cleanmgr.exe似乎有时会启动“清理”。并且有一个计划任务(Win8 以上) - 启动清理。与运行命令略有不同。清除前有 30 天的宽限期,以及一些超时问题(无论如何,1 小时后结束)。


超级用户为什么 /winsxs 文件夹变得这么大,可以让它变小一点吗?


管理安装

您无法安全删除这些文件,他们在那里是为了促进卸载调整维修对已安装的产品执行的操作。但是,你可以大大减少缓存的 MSI 文件的大小通过运行行政安装(本质上文件提取) 才能安装 MSI。 请点击上面的链接查看说明 - 您应该将这些提取的文件放在网络共享上。

缓存的 MSI 文件曾经很小,因为它们被剥离了内部 CAB 文件。然而,从Windows 7的(MSI 版本 5)MSI 文件现在以全尺寸缓存以避免破坏文件签名这会影响安装程序启动时的 UAC 提示(这是 Vista 的一个已知问题)。这可能会导致磁盘空间消耗大幅增加(对于某些系统,会达到几 GB)。

运行 admin install 将从 MSI 中嵌入的 CAB 文件中提取文件,调整新 MSI 中媒体表中的媒体布局,以便运行时使用提取的外部源文件而不是内部 CAB。然后,用于安装的新且较小的 MSI 文件将缓存在系统中。这可以节省几 GB 的磁盘空间,具体取决于您使用的安装程序、需要安装的数量、安装程序的大小等等……请记住,使用管理映像时必须处理上面描述的 UAC 提示问题,因为提取的 MSI(通常)不再签名,而是来自信誉良好的来源(您自己的提取)。

提取的文件和相关的 MSI 文件应放在网络安装点以及所有其他安装程序,以确保文件可用于修复操作。无论如何,大多数大型公司都是这样处理安装的。那么缓存的 MSI 中就根本不需要嵌入 CAB 文件了。SCCM 和其他部署系统也可能有其他方法来确保文件可用于修复操作。

更多链接:

答案2

这实际上不是一个短期的解决方案 - 而是一个长期策略 - 但听起来需要对文档进行网络驱动器共享(以让它们漫游和保存)以及对机器进行半定期重建。

更实用的是,通过 Linux 对驱动器进行映像处理dd是一种快速简便的方法,可以将磁盘克隆到更大的磁盘上。看看你是否可以为最严重的违规者准备一些更大的硬盘,克隆他们的磁盘并扩展它(https://superuser.com/questions/1050894/using-dd-to-clone-a-hdd-to-an-ssd),它们应该很快就能再次正常运行。

相关内容