macOS 中 APFS 快照需用终端命令查看与管理:sudo tmutil listlocalsnapshots / 列出根卷快照,df -h / 和 sudo tmutil thinlocalsnapshots / 9999999999 1 评估空间占用,Time Machine 快照命名含 com.apple.TimeMachine 前缀,删除需谨慎执行 sudo tmutil deletelocalsnapshots。

在 macOS 中,快照(Snapshots)主要由 APFS 文件系统支持,用于 Time Machine 本地快照、系统还原点或第三方备份工具创建。查看快照列表及了解其存储分布,需借助终端命令,系统自带的图形界面不直接展示这些信息。
查看所有 APFS 快照列表
打开“终端”(位于 /应用程序/实用工具/终端),输入以下命令:
sudo tmutil listlocalsnapshots /
该命令列出根卷(/)上所有本地快照(含 Time Machine 自动生成的)。若使用多个 APFS 卷(如“数据”卷),将 / 替换为对应挂载路径,例如:
sudo tmutil listlocalsnapshots /Volumes/数据
执行时需输入管理员密码。每条结果形如 com.apple.TimeMachine.2024-05-20-143217,末尾为快照创建时间戳。
查看快照占用的实际空间
APFS 快照本身不单独“占空间”,而是共享底层数据块;但当原始文件被修改或删除后,快照会保留旧版本所需的数据块,从而影响可用容量。要评估快照对存储的影响:
- 运行 df -h / 查看卷总用量与可用空间
- 运行 sudo diskutil apfs listSnapshots / 获取每个快照的 UUID 和创建时间(部分系统版本支持)
- 更直观的方式是使用 sudo tmutil thinlocalsnapshots / 9999999999 1 —— 此命令不会真正删除,但会返回“可释放空间估算值”,例如输出 Thinned local snapshots: 后跟具体字节数(如 12.4 GB)
识别哪些快照属于 Time Machine
Time Machine 创建的本地快照命名有固定前缀,可通过过滤识别:
sudo tmutil listlocalsnapshots / | grep "com.apple.TimeMachine"
非 Time Machine 快照(如某些部署工具或脚本生成)通常无此前缀,命名更随意。若发现大量非标准快照,建议检查是否启用了第三方备份或系统管理工具。
安全清理过期快照(谨慎操作)
系统通常自动管理快照生命周期(如 24 小时内保留每小时快照,之后逐步合并)。手动清理仅在空间严重不足且确认无恢复需求时考虑:
- 删除指定快照:sudo tmutil deletelocalsnapshots com.apple.TimeMachine.2024-05-20-143217
- 批量删除某日期前的所有快照:先用 tmutil listlocalsnapshots 筛出目标,再逐条执行 delete 命令
- 注意:删除后无法恢复,且不影响 Time Machine 备份盘中的远程快照
不复杂但容易忽略的是:快照空间占用是动态的,和文件变更频率强相关。定期检查 + 理解 APFS 的写时复制机制,比盲目清理更重要。










