要点速览
- 可清除空间是被 macOS 视为可丢弃的数据所占用的存储空间,系统在需要空间时会自行移除这些数据。
- 它通常包括“时间机器”本地快照、部分缓存,以及可以重新下载的 iCloud 文件本地副本。
- 访达和储存空间设置把可清除空间计为可用空间;“终端”中的 df 和“磁盘工具”的空闲空间数值则不这样计算。
- 当应用或更新需要空间时,macOS 会自动释放可清除空间,所以你很少需要强制释放。
- 如果某个工具坚持要求真正的空闲空间,请先重新启动,再用 tmutil 精简本地快照。
如何查看和释放 Mac 上的可清除空间
- 对比两个数字. 在访达中选择启动磁盘,选取“文件 › 显示简介”查看可用空间和可清除空间,然后在“终端”中运行 df -h /,查看仅包含空闲空间的数字。
- 再试一次. 大多数安装器和应用向 macOS 申请空间的方式都会触发清除,所以往往只需重试一次就够了。
- 重新启动 Mac. 重新启动会释放交换文件和临时文件,也让 macOS 有机会清除不再需要的缓存。
- 必要时精简本地快照. 运行 tmutil thinlocalsnapshots /,后面跟上以字节为单位的大小和 1 到 4 的紧急程度,让“时间机器”移除快照。
- 释放云端文件的本地副本. 在访达中,按住 Control 键点按 iCloud 云盘中的文件夹,选取“移除下载”,即可释放本地副本而不删除文件。
可清除空间是当前正在使用、但被 macOS 视为可丢弃,并会在需要空间时自行释放的存储空间。它通常包括“时间机器”本地快照、部分缓存,以及可以重新下载的 iCloud 文件本地副本。访达和储存空间设置把它计为可用空间;“终端”中的 df 和“磁盘工具”的空闲空间数值则不这样计算。在日常使用中,你不需要为它做任何事。
哪些内容算作可清除?
Apple 没有公布完整的清单,而且其构成会随 macOS 版本以及你打开的功能而变化。实际上,可清除空间由某个系统服务登记为可安全移除的数据组成。一个名为 deleted 的后台进程负责跟踪这些数据,它会监听空间不足的警告,并要求各项服务归还空间。你可以用 man deleted 查看它的简短说明。
典型内容包括:
- “时间机器”本地快照。Apple 表示,Mac 会把快照占用的空间计为可用储存空间,并在快照过旧或需要空间时将其移除(关于“时间机器”本地快照)。
- 由 macOS 管理的缓存和临时数据。Apple 的优化储存空间使用手册指出,储存空间不足时,macOS 会清除可以安全删除的缓存和日志,例如临时数据库文件、损坏的下载项、暂存的 macOS 和 App 更新,以及 Safari 浏览器网站数据。
- 云端文件的本地副本。为 iCloud 云盘打开“优化 Mac 储存空间”后,已上传的文件可以从本机移除,打开时再重新下载。视版本和设置而定,其中一部分空间会被报告为可清除。
- 可以重新下载的媒体。打开优化储存空间后,你已看过的 Apple TV 影片和节目会被自动移除。
并非所有看起来可丢弃的东西都属于可清除空间。你自己的 ~/Library/Caches 缓存、旧的下载文件和 iPhone 备份,在你删除之前都是普通的已用空间。
为什么访达和 df 的数字对不上
每个工具回答的问题略有不同。
| 查看位置 | 显示内容 | 是否包含可清除空间? |
|---|---|---|
| 对启动磁盘使用访达的“文件 › 显示简介” | 可用,括号内注明可清除的部分 | 是 |
| 访达状态栏(显示 › 显示状态栏) | 可用 | 是 |
| 系统设置 › 通用 › 储存空间 | 可用 | 通常是 |
“终端”:df -h / |
Avail |
否 |
“终端”:diskutil info / |
Container Free Space | 否 |
| 磁盘工具 | 使用量条中的空闲空间;详细信息中的“可用”,括号内注明可清除的部分 | 空闲空间:否;可用:是 |
用 Apple 开发者文档的说法,访达报告的是可供“重要”用途使用的容量,其中包括系统可以清除的空间;而 df 读取的是文件系统中空闲数据块的数量。两者都没有错。它们之间的差值大致就是可清除空间的大小。视快照和缓存的多少,这个差值从几 GB 到几十 GB 都属正常。
由此带来一个副作用:当你删除一个仍被本地快照保留的文件时,访达的“可用”可能会增加,而 df 保持不变。我们的删除文件后空间没有变化指南专门讲了这种情况。
macOS 什么时候释放它?
macOS 按需释放可清除空间,而不是按某个你能看到的时间表:
- 当应用或安装器向系统申请所需空间时,macOS 会清除足够多的数据来腾出空间。Apple 表示,本地快照不会占用下载文件、拷贝文件或安装软件等操作所需的空间。
- 当空闲空间不足时,
deleted进程会要求各项服务归还空间。 - “时间机器”本地快照无论如何都会在 24 小时后被移除。
释放可能会有延迟,而且访达显示的可清除数字只是估算,并非保证。那些直接检查原始空闲空间、而不向 macOS 申请空间的应用,不会触发清除。
应该强制释放吗?
通常不必。如果你想安装更新或拷贝文件,而访达显示空间足够,那就直接去做:系统会释放它所需的空间。强制释放会移除那些让 Mac 更快或更安全的还原点和缓存,却换不来长久的好处。
当某个工具检查原始空闲空间并拒绝启动时,强制释放才有帮助,例如一些命令行安装器、虚拟机工具,或会创建大型磁盘映像的应用。请按以下顺序尝试:
- 重试一次。上一次尝试可能已经触发了清除。
- 重新启动 Mac。这会释放交换文件和临时文件。
- 精简本地快照。这会要求“时间机器”移除快照,直到收回你指定的空间量:
tmutil thinlocalsnapshots / 20000000000 4
第一个数字是以字节为单位的目标大小(此处为 20 GB,十进制),最后一个数字是紧急程度,取值 1 到 4。该命令只会移除“时间机器”自己的本地快照,被移除的快照无法恢复。备份磁盘上的“时间机器”备份不受影响。利弊权衡请参阅“时间机器”本地快照。
- 用访达中的“移除下载”释放云端文件的本地副本(Apple 支持)。文件仍保留在 iCloud 中,打开时会重新下载。我们的“移除下载”与删除的区别指南解释了两者的不同。
- 以安全模式启动一次。Apple 指出,这会清除部分系统缓存(释放 Mac 上的储存空间)。之后再正常重新启动。
不要使用那种用巨大的临时文件塞满磁盘、逼 macOS 慌忙清除的技巧。启动磁盘被完全写满时,应用可能无法存储文件,系统也可能变得不稳定。
可清除空间与系统数据
这两个数字有重叠,但并不相同。系统数据是储存空间设置给无法归类的内容贴的标签,而“可清除”是数据的一种属性,表示 macOS 可以将其移除。本地快照和系统缓存往往两者兼具。这就是为什么在你删除大文件一天后,系统数据可能会自行缩小。简短定义请参阅术语表中的可清除空间和本地快照词条。
MoreRoom 能帮上什么忙
作为“系统数据详解”的一部分,MoreRoom 免费版会把 macOS 将自行清除的内容和不会清除的内容分开显示。它会解释为什么在你的 Mac 上访达和 df 的数字对不上,并列出本地快照;它的“储存空间天气”视图会记录 30 天内的可用空间变化,并预测磁盘何时会存满。“保留在云端”功能会移除已存在于 iCloud 云盘、Dropbox、OneDrive 或 Google Drive 中的文件的本地下载,一次一个文件夹,就像访达的“移除下载”;Pro 可以一次处理整个云盘。MoreRoom 不会删除快照,也不会强制清除;这些请使用 tmutil。
常见问题
Mac 上的“可清除”是什么意思?
它是 macOS 无需询问你就能删除的数据所占用的空间,例如“时间机器”本地快照和部分缓存。需要空间时,macOS 会自动将其移除。
可以手动删除可清除空间吗?
不能直接删除,因为它不是一个文件夹。但你可以移除构成它的部分内容,例如用 tmutil 精简本地快照,或对 iCloud 云盘中的文件使用“移除下载”。
为什么访达显示的可用空间比 df 多?
访达的“可用”数字把可清除空间加到了空闲空间上,因为 macOS 可以按需收回它。df 只显示当前真正空闲的数据块。
可清除空间属于系统数据吗?
两者可能有重叠。本地快照和缓存既属于可清除空间,也常被储存空间设置归入系统数据,所以这两个数字相关,但并不相同。
为什么我的 Mac 不释放可清除空间?
macOS 只有在有程序申请空间时才会释放它,而有些工具只检查原始的空闲空间,并不发出申请。请重新启动、重试,必要时用 tmutil 精简本地快照。