在 Ubuntu(以及大多数 Linux 发行版)中,“缓存过大”通常不是真正的问题,而是系统正常利用空闲内存提升性能的表现。但如果你发现磁盘占用大或内存看起来被“吃光”,原因可能不同。下面分情况说明:
这是正常现象,不是故障。
Linux 会把空闲内存用来做:
命令示例:
free -h
你可能会看到:
total used free shared buff/cache available
Mem: 7.7G 2.1G 0.3G 0.2G 5.3G 5.0G
available 才是你能用的真实内存一般不需要。
如果非要清(不推荐生产环境):
sudo sync
sudo echo 3 > /proc/sys/vm/drop_caches
这可能是真正需要处理的缓存。
/var/cache/apt/archives/
清理:
sudo apt clean
sudo apt autoclean
/var/lib/snapd/snaps/
旧版本不会自动删
查看:
du -sh /var/lib/snapd/snaps/*
清理旧版本(需谨慎):
sudo snap remove --revision=xxx package
/var/lib/docker/
清理:
docker system prune -a
/var/log/
清理旧日志:
sudo journalctl --vacuum-time=7d
~/.cache/
可安全删除部分内容
# 看谁占磁盘
sudo du -h /var | sort -h | tail
# 看内存
free -h
# 看 snap
snap list --all
如果你愿意,可以告诉我:
free -h 或 df -h 的输出我可以帮你精准分析。