返回博客

Mac 上的 ~/Library/Containers 是什么,能删吗

Containers 装的是沙盒应用的数据,不是可丢弃的缓存。里面有什么、哪些可以安全删除,以及怎么分辨无主容器和仍在使用的容器。

已发表 2026年8月31日 作者 Vladimir Chemeris 阅读时间 约 1 分钟阅读
Mac 存储应用数据Review First

~/Library/Containers 不是缓存文件夹,仅这一点就解决了大半问题。里面放的是沙盒应用的数据:设置、数据库、下载的媒体。删掉你还在用的应用的容器,等于把它清零并带走数据。删掉去年就卸载的应用的容器,则只是腾出空间,什么也不损失。

基本原则:把每个容器和你还装着的应用一一对上。背后已经没有应用的才删,其余留着。

快速回答

  1. 按体积列出:du -sh ~/Library/Containers/* | sort -h | tail -20
  2. 读文件夹名里的 bundle identifier,找出对应的应用。
  3. 只把应用已从 Mac 上消失的容器移入废纸篓。
  4. 应用还在用,就在应用内部清理已存的媒体。
  5. ~/Library/Group Containers 更谨慎:多个组件共用它。
  6. 动容器之前先退出应用,废纸篓放一天再清空。

容器是什么

macOS 让沙盒应用在专属的受限主目录里运行。所有 App Store 应用都是这样,商店之外的许多应用也是。这个私有主目录就是容器。

打开一个看看,结构很眼熟:

~/Library/Containers/com.apple.Safari/
  Data/
    Library/
      Application Support/
      Caches/
      Preferences/
    Documents/
    Desktop/       -> 指向你真实桌面的链接
    Downloads/     -> 指向你真实下载文件夹的链接

应用把 Data 当作自己的主目录。其中的 Library 装着只属于它的东西。DesktopDocuments 这两项是指向你真实文件夹的符号链接,应用只有在获得相应权限时才能跟过去。

这个细节回答了大家最担心的问题:删除容器删掉的是链接,而不是链接指向的文件。你的文稿仍在原来的位置。

删掉之后会失去什么

属于应用的那部分是真数据。

  • 该应用的账号配置和登录状态;
  • 它的设置和窗口状态;
  • 它建立的数据库,比如邮件索引或消息记录;
  • 它下载并归入自身存储的媒体。

找不到容器的应用会像刚装好一样启动。对于从服务器同步的笔记应用,代价是重新下载。对于把一切都留在本地的应用,代价就是内容本身。

哪些容器可以放心删

安全的是那些应用已经不在你 Mac 上的容器。

du -sh ~/Library/Containers/* | sort -h | tail -20

拿出每个大文件夹,读它的名字。com.company.appname 会告诉你厂商和应用。然后看这个应用是否还在 /Applications 里。如果不在,这个文件夹就是残留:应用被删了,容器留下了。移入废纸篓。

如果应用还装着,就把容器留在原处,从应用内部去解决体积。聊天工具、邮件客户端和浏览器都提供已存媒体与缓存的设置,走这条路能保住账号配置。

Group Containers 的规则不一样

~/Library/Group Containers 存放的是声明同一个 App Group 的组件之间共享的数据:应用和它的扩展、应用和它的小组件、套件和它的辅助程序。一个文件夹可能支撑着好几块看得见的软件。

规则相同,但影响面更大。删掉你已经不用的软件的群组容器没有问题。删掉当前应用与其扩展共用的那个,会同时破坏两者的共享状态,而应用通常没法告诉你原因。

最大的那些容器里装了什么

有几个名字几乎出现在每份列表里。

  • 聊天应用。 收到的照片和视频堆在容器里。这类应用大多有存储页面,可以在不动账号的前提下清掉旧媒体。
  • 邮件。 下载附件的副本留在容器里,多年间悄悄变大。
  • Safari。 它的缓存在 com.apple.Safari 里,而不在 ~/Library/Caches,所以在缓存清单里看起来像是缺席。
  • 只试过一次的应用。 几十个小文件夹,来自几年前就消失的软件。单看无所谓,加起来是好几百 MB。

不出事的顺序

  1. 把容器按体积排序,只看列表顶部。
  2. 逐个判断对应的应用是否还装着。
  3. 应用在运行就先退出。
  4. 只把无主的容器移入废纸篓。
  5. 正常用一天,再清空废纸篓。
  6. 对保留的应用,打开它自己的设置,从那里清掉已存的媒体。

第 2 步就是全部工作。背后什么都没有的容器值得删,背后还有东西的值得留。

总结

~/Library/Containers 当成应用数据,因为它就是。问题从来不是笼统的”容器能不能删”,而是某个具体容器背后是否还有应用。没有就移入废纸篓;有就进到应用里清掉它存的东西,容器留在 macOS 放它的地方。

关于作者

Vladimir Chemeris

StorageRadar 创始人

Vladimir Chemeris 开发 StorageRadar,一款注重隐私的 macOS 存储分析应用,强调先审查后清理、开发者存储和前后对比。

常见问题

Mac 上的 Containers 能安全删除吗?

只有你已经不再拥有的应用可以。容器里放的是沙盒应用的数据:设置、它管理的文稿,以及下载的内容。删掉已安装应用的容器,等于把它退回全新状态并带走数据。删掉几个月前已卸载应用的容器,则只是腾出空间,没有代价。

Mac 上的 ~/Library/Containers 文件夹是什么?

这是 macOS 为每个在沙盒中运行的应用存放专属主目录的地方,涵盖所有 App Store 应用和许多其他应用。每个子文件夹以应用的 bundle identifier 命名,里面的 Data 文件夹就像一个只属于该应用的小型主目录。

删除容器会删掉我的文稿吗?

容器 Data 文件夹里的桌面、文稿、下载这几项是指向你真实文件夹的符号链接,删除容器删掉的是链接,文件仍在原处。真正失去的是应用自己存放在容器里的数据:设置、数据库,以及它下载到那里的内容。

Containers 和 Group Containers 有什么区别?

容器属于一个应用。~/Library/Group Containers 里的群组容器由声明同一个 App Group 的应用共享,应用就是通过它与自己的扩展和小组件通信。删除群组容器可能一次性破坏多个组件的共享状态,所以要比删单个容器更谨慎。

怎么找出已卸载应用留下的容器?

把 ~/Library/Containers 里的 bundle identifier 和你还装着的应用对照一遍。名字对应的应用已经不在“应用程序”里,那这个文件夹就是残留,可以移入废纸篓。先按体积排序:大多数残留很小,只有少数值得花时间。

为什么某个容器有好几个 GB?

聊天应用把收到的图片视频放在容器里,邮件保留下载附件的副本,Safari 把缓存放在那里。这些情况通常可以打开应用自己的设置,从里面清掉已存的媒体,比连账号配置一起删掉容器安全得多。

分清哪个容器已经无主。

StorageRadar 用精确路径和体积梳理你的 Library 文件夹,标出已卸载应用的残留,并在删除任何东西之前保留审查这一步。