Mac 系统数据:储存显示为何和文件夹大小对不上
储存空间设置里,「系统数据」占了一大块,访达里用「显示简介」查到的文件夹大小加起来,却对不上。两边都可能没错:一个是分类估算,一个是你的账户有权限读取的目录大小。
这篇解释数字为什么对不上,不教你把系统数据压到某个目标值,也不必为了对齐数字乱删文件夹。内容与安全清理顺序见 Mac 上的系统数据是什么;可清除与可用空间的区别见 Mac 可清除空间是什么。
两套尺子,两份工作
| 工具 | 报告什么 | 看不到什么 |
|---|---|---|
| 系统设置 › 通用 › 储存空间 | 基于索引的分类估算 | 更新有延迟;不列出隐藏系统路径;快照会影响可用空间计算 |
| 访达「显示简介」/ 文件夹大小 | 所选目录的逻辑大小 | 跳过受保护路径;克隆与稀疏文件影响加总 |
对某路径运行 du |
命令能读取到的磁盘块用量 | 权限不足会漏算,也不会标注「系统数据」 |
df / APFS 容器剩余空间 |
卷与容器级空闲空间 | 没有分类标签 |
Apple 在 检查 Mac 上的存储空间 中说明储存分类,在磁盘工具帮助中说明 APFS 容器的空间共享机制,但都没有说可见文件夹的大小加起来就等于「系统数据」。
数字为什么总对不上
- 范围不同。 系统数据包含缓存、日志、虚拟内存、设备备份和分散各处的支持文件,本地快照也会影响统计。
- 权限不足。 没有「完全磁盘访问权限」时,
du ~/Library会跳过 Time Machine、邮件等受保护目录;漏算的空间仍可能计入系统数据。 - APFS 特性。 克隆、快照、稀疏文件让「显示简介」的加总难以对应容器空闲空间。
- 更新时间不同。 大量增删文件后,储存分类更新较慢;文件夹大小则在重新测量时更新。
- 与可清除空间重叠。 某些空间尚未回收,在分类里算已用,却也计入可用空间。
可用以下只读命令交叉核对:
df -h /
diskutil apfs list
du -sh ~/Library/* 2>/dev/null | sort -h
du 输出只反映能读取的目录。没有输出或出现「Operation not permitted」,不代表文件夹为空,也可能是权限不足;上面的命令会隐藏错误提示。
一套可操作的核对流程
- 记下储存空间里的「系统数据」和「可用」。
- 记下
df与 APFS 容器剩余空间。 - 列出本地快照,先不删。
- 测量你能确认用途的大目录,如认识的
~/Library子目录、文稿、自己建的虚拟机。 - 检查差额是否来自不可读路径、快照或统计方式,不要直接认定「访达坏了」。
- 只删能恢复的内容,先复测
df,稍后再看储存空间设置。
若「可用」充足,系统数据大并不等于故障。可用空间紧张,又找到了用途明确、能恢复的数据,才有必要清理。
哪些做法无法让两个数一致
| 动作 | 为什么不能让数字一致 |
|---|---|
随机删 /Library 下的文件夹 |
可能弄坏应用,分类变化也未必符合预期 |
盲目清空整个 ~/Library/Caches |
可安全清理的缓存与重新获取成本高的离线数据混在一起 |
| 手动修改快照内部结构 | 危及备份;应使用文档中说明的快照工具 |
| 指望任何分析器精确匹配系统数据 | 分析器统计能读取的目录,系统数据不是一个目录 |
磁盘分析视图适合用来找大目录,不适合拿来与 Apple 的「系统数据」数字逐一对齐。
「可用」空间不足时的相关检查
- 本地快照仍保留已删除文件占用的块:删除本地 Time Machine 快照
- 删了大文件,可用空间却没增加:删了文件可用空间不涨
- iOS 备份、邮件或开发工具数据在支持目录里:回到对应应用中处理
常见问题
能在访达里打开一个叫「系统数据」的文件夹吗?
不能,它不是单一文件夹,而是分散在多个位置的数据分类,部分路径也无法在访达中直接浏览。
为什么 Macintosh HD 的「显示简介」比储存里的已用更小?
两者统计方式不同,而且现代 macOS 的启动磁盘将系统卷与数据卷放在同一 APFS 容器中。核对容量时,看容器剩余空间更合适。
清空缓存就能让系统数据等于我的文件夹加总吗?
几乎不会。清完缓存,仍可能有日志、虚拟内存、快照、备份和支持文件没被算进文件夹总和。
系统数据很大就一定紧急吗?
不一定,先看「可用」是否充足,再看有没有用途明确、可回收的数据。Mac 运行正常,就不必强求分类图与文件夹总和一致。