macOS 无真正自动清理磁盘快照机制,仅在空间压力、备份盘满或手动执行命令时被动清理;本地快照不随时间自动删除,需用 tmutil thinlocalsnapshots 等命令干预。

macOS 并没有真正意义上的“自动清理磁盘快照”机制——它不会按时间定期删快照,也不会主动释放空间,除非你触发特定条件或手动干预。所谓“自动”,其实是被动响应:只有当系统检测到空间压力、备份盘满、或用户执行命令时,才会启动清理逻辑。
Time Machine 本地快照不自动删除
系统在未连接外置备份盘时,会自动生成本地快照(标记为 com.apple.TimeMachine.),用于断网期间快速恢复文件。但这些快照一旦生成,就会一直保留,哪怕已闲置数周。它们被计入“系统数据”或“可清除”空间,却不会随时间推移自行消失。访达里完全不可见,也无法通过“储存空间”界面一键清空。
真正起作用的是空间驱动型清理
- 当 Time Machine 备份盘空间不足(可用空间低于约 10%),系统每小时检查一次,自动删除最老的完整备份快照集(不是单个增量),直到腾出约 10%–20% 空间;
- 对于本地快照,系统从不主动清理,必须靠
tmutil thinlocalsnapshots这类命令触发; - 即使你刚升级完 macOS,旧的
com.apple.os.update快照也不会自动删,需确认系统稳定运行 1–2 天后手动处理。
哪些快照会被跳过,不能删?
部署和使用军舰的 macOS Automator 自动化服务集合。包含 5 个实用工作流:PDF转JPG、PNG重命名并转JPG、图像拼接、解压RAR、顺序命名图像文件。一键安装所有服务到 ~/Library/Services/ 目录。使用场景:(1) "安装我的自动化服务",(2) "部署所有 Automato...
- 启动卷当前依赖的恢复快照(
*标记的,含 Preboot 或 Recovery 字样); - 刚创建不足 24 小时的本地快照;
- 正在被 Time Machine 同步中、尚未完成上传的快照;
- 被
tmutil pin手动锁定的快照。
清理后空间没立刻回来?这是正常的
APFS 使用写时复制(CoW),快照删除只是解除引用,真实空间回收有延迟:
- 底层数据块需等所有快照和当前文件都停止引用才释放;
- Spotlight、iCloud 同步、SIP 保护目录可能临时占用引用;
- 若 df -h 显示空间未变,重启 Mac 常能完成最终回收。
H3 安全清理本地快照的推荐做法
- 先查快照:
tmutil listlocalsnapshots /,若为空,试试/System/Volumes/Data; - 再执行瘦身:
sudo tmutil thinlocalsnapshots / 9999999999999999 1; - 若仍卡住,检查磁盘是否真紧张:
df -h /和df -h /System/Volumes/Data,看可用空间是否低于 2GB; - 极端情况(只剩几十 MB)需进恢复模式操作,否则终端无法启动新进程。
H3 想一劳永逸?可禁用本地快照生成
仅建议有稳定外置 Time Machine 备份的用户:
- 关闭:
sudo tmutil disablelocal(注意:不删已有快照,得先清空); - 开启:
sudo tmutil enablelocal; - 关闭后,系统不再生成
com.apple.TimeMachine.快照,但会失去断网时的本地恢复能力。
H3 别踩的坑
- 不要用
diskutil apfs deleteSnapshot直接删——绕过 Time Machine 管理层,易导致后续命令异常; - 别信第三方工具标称的“快照占用 XX GB”——APFS 共享数据,很多是重复计算;
-
deletelocalsnapshots适合精准删除,但误删活跃快照可能导致恢复失败,慎用。
不复杂但容易忽略

















