在 Ubuntu 中,“缓存”通常指以下几类,可根据需要选择对应方式释放:
Linux 会主动用空闲内存做文件缓存,这是正常且有益的,通常不需要手动释放。只有在特殊场景(如测试、内存紧张)才建议释放。
free -h
# 释放 pagecache
sudo sync; sudo echo 1 > /proc/sys/vm/drop_caches
# 释放 dentries 和 inodes
sudo sync; sudo echo 2 > /proc/sys/vm/drop_caches
# 释放所有缓存
sudo sync; sudo echo 3 > /proc/sys/vm/drop_caches
⚠️ 说明:
sync 是为了先把数据写回磁盘,防止丢失Ubuntu 用 apt 安装软件时会缓存 .deb 文件。
du -sh /var/cache/apt/archives
sudo apt clean
sudo apt autoclean
sudo apt autoremove
sudo apt install bleachbit
打开后选择要清理的内容(谨慎操作)
# 查看日志占用
journalctl --disk-usage
# 只保留最近 100MB
sudo journalctl --vacuum-size=100M
# 只保留 7 天
sudo journalctl --vacuum-time=7d
sudo snap list
df -h /var/lib/snapd
可删除旧版本:
sudo snap remove --revision=<rev> <snap名>
du -sh ~/.cache
rm -rf ~/.cache/*
sudo apt autoremove
sudo apt clean
sudo journalctl --vacuum-time=7d
rm -rf ~/.cache/*
如果你是指 Docker / 浏览器 / 某个具体程序缓存,可以告诉我,我给你更精确的方案。