储存空间

Mac 磁盘空间:“系统数据”和可清除空间背后藏着什么

你删掉了 40 GB 的视频,储存空间进度条却几乎没动。访达显示有 120 GB 可用,系统设置却只显示 85 GB。还有一个神秘的“系统数据”类别,比你所有的照片还要大。这些都不是错误:macOS 和它的 APFS 文件系统本来就是这样计算空间的。

了解这些机制,可以避免两种相反的错误:被一个误导性的数字吓到,或者盲目删除系统需要的文件。下面告诉你如何读懂磁盘,以及如何真正释放空间。

正确解读“通用 > 储存空间”

打开苹果菜单 > 系统设置 > 通用 > 储存空间。彩色条把已用空间分成几个类别:应用程序、文稿、照片、macOS、系统数据,以及根据你的使用情况出现的其他类别(iCloud 云盘、邮件、信息、iOS 文件)。

在下结论之前,有三点需要知道:

  • 计算需要时间。刚打开时,大部分空间常常被归入“系统数据”,因为还没完成分类。等一两分钟,各类别就会变得更准确。
  • macOS 类别对应的是系统宗卷,自 Big Sur 起已被签名封存且只读。根据版本不同,大约占 12 到 20 GB。你无法也不应该去动它。
  • 进度条下方的建议(储存在 iCloud 中、优化储存空间、自动清倒废纸篓、减少杂乱)有用但比较笼统。每个类别旁边的信息按钮可以显示其中最大的项目。

“系统数据”:一个巨大的杂物箱

系统数据收纳了 macOS 没有归入其他类别的一切。占用 15 到 30 GB 属于正常。超过 60 或 80 GB,通常有具体原因。常见的“嫌疑人”包括:

  • 时间机器本地快照(见下文),往往是头号元凶。
  • 缓存:App 和系统的缓存,位于 ~/Library/Caches 和 /Library/Caches。
  • 日志和诊断报告,如果某个 App 反复崩溃,体积会迅速膨胀。
  • 开发数据:Xcode 的 DerivedData 和模拟器、Docker 镜像、npm、Homebrew 或 pip 缓存。在开发者的 Mac 上,轻松就能达到 50 GB。
  • 本地 AI 模型:由 Ollama 或 LM Studio 等工具下载,每个都有好几 GB。
  • 虚拟内存(交换文件)和睡眠镜像,由系统自行管理。

要看清里面到底藏了什么,需要一个能按文件夹逐层展示磁盘真实情况的工具。

APFS:容器、宗卷与克隆

自 High Sierra 起,Mac 使用 APFS。你的磁盘是一个容器,里面有多个宗卷:系统宗卷(macOS)、数据宗卷(你的文件和 App),以及几个技术性宗卷(Preboot、Recovery、VM)。这些宗卷共享同一块可用空间,没有固定的分区。在磁盘工具中选择“显示 > 显示所有设备”即可看到这一结构。

APFS 还能克隆文件。在同一宗卷上复制文件时,并不会真正复制数据:两个文件共享相同的数据块,只有之后的修改才会占用额外空间。实际后果是:访达会显示每个副本的完整大小,因此文件大小之和可能超过实际占用的空间。只要原文件还在,删除一个克隆几乎不会释放任何空间。这也是为什么一个严谨的重复文件工具,必须谨慎对待它报告的数字。

本地快照与可清除空间

本地快照

开启时间机器后,macOS 大约每小时为数据宗卷创建一个本地快照,并保留 24 小时,即使备份磁盘没有连接也是如此。每次系统更新前,macOS 也会创建一个快照。要查看它们,请打开“终端”并输入:

tmutil listlocalsnapshots /

快照在创建时不会复制任何内容,但会保留之后被删除的文件所占的数据块。这就是为什么删掉 40 GB 视频后空间不会立刻释放:快照会把它们保留到过期为止。

可清除空间

可清除空间是指 macOS 在空间不足时能够自行回收的部分:本地快照、可重建的缓存,以及在开启“优化储存空间”时 iCloud 云盘文件的本地副本。这些空间目前处于占用状态,但 macOS 会在需要时自动释放。实际使用中,小规模需求处理得很好;可一旦某个 App 突然需要一次性 30 GB(例如 macOS 更新,或导入一个大型视频项目),效果就不那么理想了。

为什么访达和系统设置的数字不一致

访达把可清除空间算作可用空间:它默认 macOS 会在需要时释放这部分空间。系统设置则常常把它算作已用(归入系统数据)。于是两者之间可能相差几十 GB。再加上访达在计算文件夹大小时会重复计入 APFS 克隆,以及系统设置的延迟计算:两个数字都“没错”,只是衡量的东西不同。

对于系统更新或大文件来说,真正重要的是实际的空闲空间。如有疑问,磁盘工具会分别显示容器的已用空间和空闲空间。

具体如何释放空间

在 MacNeat 中,每个模块负责解决问题的一部分:

  • Panorama 以按比例缩放的气泡图展示整个磁盘或某个文件夹:点一下即可深入下一层,占用大户一目了然,系统数据内部也不例外。
  • Archipel 找出大文件、重复文件、相似图片和被遗忘的下载内容。另请参阅我们关于重复文件的文章。
  • Clarté 负责处理缓存、日志、无用的 AI 文件以及本地邮件附件。
  • Nimbus 找出存储在本地的 iCloud 云盘、Google Drive、OneDrive 或 Dropbox 文件,并可移除其本地副本:文件仍保留在云端,但不再占用 Mac 的空间。
  • Atelier 中的 时间机器快照工具会列出占用空间的本地快照。

所有内容都会移到废纸篓,每项操作都会记录在案并可撤销;分析免费(删除需要许可证)。如需分步操作方法,请参阅我们的指南释放 Mac 磁盘空间。

不应删除的内容

  • /System 的内容以及系统文件夹整体。
  • /private/var/vm 中的文件(虚拟内存)。
  • “照片”图库或“音乐”资料库的内部文件:请通过对应的 App 来管理。
  • ~/Library/Mobile Documents 文件夹:这就是 iCloud 云盘,在这里删除就等于在所有设备上删除。

常见问题

为什么“系统数据”占用这么多空间?
它包括缓存、日志、时间机器本地快照、开发数据、AI 模型和虚拟内存。15 到 30 GB 属于正常;超过这个范围,可以用 Panorama 之类的工具找出原因。
可以删除时间机器本地快照吗?
可以。空间不足时 macOS 会自行删除它们,而且快照在 24 小时后就会过期。它们不能代替外置磁盘上的真正备份。
我清倒了废纸篓,为什么可用空间没有增加?
很可能是某个本地快照仍保留着这些已删除的文件,或者它们是与其他文件共享数据块的 APFS 克隆。快照过期后,空间就会回来。
该相信哪个数字,访达还是系统设置?
两者都准确,只是访达把可清除空间计入了可用空间。要判断一次大型更新能否装得下,请以实际空闲空间为准。