← 返回文章

Mac 只剩 3GB:一次磁盘占用排查

从废纸篓、应用更新副本到 Docker 卷,核对清理前后的真实可用空间

Mac 只剩 3GB:一次磁盘占用排查
本文目录 3

Mac 再次提示磁盘快满时,数据卷约 460GiB,已用 409GiB,实际可用只剩 3GiB。排查和清理后,可用空间回到 72GiB。这次最值得记住的是:du 看到的目录大小不能直接相加当作可回收量;APFS 克隆、Docker 虚拟盘和交换空间,都可能让账面数字与 df 的变化不同。

从哪里开始找

先用 df -h /System/Volumes/Data 确认真正的可用空间,再用 du -x -d 1 -h 按目录向下找。第一轮看到的主要占用是:用户目录、~/Library、系统临时目录和废纸篓。继续往下,临时目录里有一组 com.google.Chrome.code_sign_clone,账面上约 52GiB:几十份 Chrome 的应用副本,每份约 1.4GiB。

这不是 Chrome 浏览数据;浏览器资料在另一处。逐个确认副本路径和修改时间后,清掉了 43 份旧副本,保留当时最新的一份。由于 APFS 数据块可能共享,du 的 52GiB 不等于删除后一定能多出 52GiB,实际要以 df 为准。

做过的清理

  • 清空废纸篓。里面主要是旧应用副本,清完后实际多出约 22GiB。
  • 删除旧的 Chrome 代码签名副本,保留最新的一份;实际多出约 10GiB。
  • 用 docker volume prune 清掉 370 个未被容器使用的卷。清理前 Docker 报告约 14.85GiB 可回收,清理后只剩一个在用卷;OrbStack 虚拟盘占用也随之下降。
  • 清理 npm、pnpm、uv、Go 的可重建缓存,以及几个 Rust 项目的 target/ 编译产物。下次构建会重新生成这些文件。

整个过程按批次操作,每批之后都重新看 df,最后数据卷可用空间从 3GiB 回到 72GiB。各批次的目录大小和最终净增长不是同一种口径,不做加总推算。

留下的东西

聊天记录、浏览器资料、应用容器和个人文件没有作为缓存处理。巡检工具留下的 Git worktree 也没有直接删除,因为它可能是工作中的检出目录。系统交换空间当时约占 23GiB;它与内存压力有关,不靠手动删除交换文件解决。

这次排查的顺序可以复用:先确认实际可用空间,再按目录定位;区分缓存、副本和真实数据;每清一批都用 df 复核。 数字以磁盘重新统计后的结果为准。

🚀相关开源工具与实践
读完不过瘾?把文中思考变成可落地的生产力
🎛️

dsh-llm-hub

DSH 插件

DSH 模型管理层:网关可达性探测、目录拉取、余额配额与多账号 Key 轮换。

🌸

dsh-bloom-theme

DSH 主题

Bloom 莫兰迪 10 套中国风配色,OKLCH 调色,WCAG AA 认证。

🔐

kyvault

安全底座

本地加密密钥管理 CLI —— AES-256-GCM 存储,AI 只能拿到别名注入,永不泄露明文。

webkubor

关于作者 · 栖洲 (webkubor)

把审美做成工程 —— 经得起生产环境检验的 AI 系统、独立开发工作流与极客主题。