直接用终端强制清空macOS所有顽固缓存需分层操作:一、用lsof查杀占用~/Library/Caches的进程后删除;二、用chflags清除uchg标志再rm;三、sudo清理/Library/Caches(避开com.apple.*)和/var/log归档日志,并用tmutil释放Time Machine本地快照;四、清空并重置~/.Trash,最后重启。
直接用终端强制清空 macos 所有顽固缓存,关键不是“一股脑全删”,而是分层定位、逐类清理——系统级缓存受 sip 保护,用户级缓存可安全删除,而被占用或带不可更改标志的文件必须先解除锁定再清除。以下操作均基于当前 macos(2026 年主流版本)原生机制,无需关闭 sip,不依赖第三方工具。
一、先释放被进程占用的缓存(尤其 ~/Library/Caches 中卡住的)
很多“删不掉”的缓存其实正被后台进程读写。先查占用:
- 运行 lsof +D ~/Library/Caches 查看哪些进程锁着用户缓存目录
- 若输出中有 PID(如 1234),执行 kill -9 1234 终止该进程
- 再试 rm -rf ~/Library/Caches/* ——多数第三方 App 缓存(如 Adobe、Google、Bilibili)此时可顺利删除
二、清除带不可更改标志(uchg)的顽固缓存
某些卸载不干净的软件会给自己缓存加 uchg 标志,导致 rm 失败且不报错。检查并清除:
- 运行 ls -alO@e ~/Library/Caches,留意输出中是否含 uchg 或 schg
- 若有,执行 sudo chflags -R nouchg ~/Library/Caches/*
- 之后再删:rm -rf ~/Library/Caches/*
三、清理系统级缓存与归档日志(需管理员权限)
/Library/Caches 和 /var/log 中的旧缓存常被系统标记为“可清除”但不自动清理:
- 清系统缓存:sudo rm -rf /Library/Caches/*(避开 com.apple.* 开头的子目录更稳妥)
- 清归档日志:sudo find /var/log -name "*.gz" -mtime +30 -delete(只删 30 天前的压缩日志)
- 补充:用 sudo tmutil thinlocalsnapshots / 5000000000 4 释放 Time Machine 本地快照(占“系统数据”大头)
四、彻底清空废纸篓并重置其状态(防止缓存残留卡住图标)
缓存删完若废纸篓图标仍显示“满”,说明 Trash 元数据异常:
- 先清空:rm -rf ~/.Trash/*
- 再重置权限:chmod 700 ~/.Trash
- 最后刷新 Finder:killall Finder
操作完成后,建议重启一次,让系统重建必要缓存。整个过程不破坏系统功能,Safari、Mail 等系统应用缓存虽可删,但首次启动会稍慢——这是正常现象,无需额外恢复。


















