Ubuntu清理内存与缓存的实用方法
一 先确认内存与缓存的真实占用
- 使用命令查看内存概况:free -h(关注 available 与 buff/cache 项,buff/cache 是可回收的页面缓存,并非内存泄漏)。
- 查看日志占用:journalctl --disk-usage(判断是否需要收缩 systemd 日志)。
- 查看目录体积:du -sh /var/cache/apt/archives /tmp ~/.cache(定位可清理的大目录)。
二 手动释放可回收的页面缓存(仅在确有需要时)
- 执行同步并清理缓存(逐条执行,或按需选择其一):
- 仅清理 PageCache:sudo sync && echo 1 | sudo tee /proc/sys/vm/drop_caches
- 清理 dentries 和 inodes:sudo sync && echo 2 | sudo tee /proc/sys/vm/drop_caches
- 清理 PageCache、dentries 和 inodes:sudo sync && echo 3 | sudo tee /proc/sys/vm/drop_caches
- 说明:写入 /proc/sys/vm/drop_caches 的值会立即生效,但只是释放可回收缓存,通常很快又会被新进程占用;在生产环境不建议频繁或定时执行,以免影响 I/O 性能。
三 清理磁盘缓存与包管理残留(释放存储空间,间接减轻内存压力)
- APT 缓存与无用依赖:
- 删除已下载的软件包文件:sudo apt-get clean
- 删除旧版本软件包文件:sudo apt-get autoclean
- 移除不再需要的依赖:sudo apt-get autoremove
- 连同配置文件一起移除:sudo apt-get autoremove --purge
- 孤立包清理:安装并使用 deborphan 查找并删除孤立包:sudo apt-get install deborphan -y && sudo apt-get remove --purge $(deborphan)。
- 旧内核清理(先确认当前内核:uname -r):sudo apt-get purge linux-image-(谨慎操作,确保至少保留一个可用内核)。
四 清理系统日志与临时文件(释放磁盘,避免日志膨胀影响性能)
- systemd 日志:
- 查看占用:journalctl --disk-usage
- 仅保留最近 1 周:sudo journalctl --vacuum-time=1w
- 仅保留 500MB:sudo journalctl --vacuum-size=500M
- 临时文件与缩略图:
- 清理 /tmp:sudo rm -rf /tmp/*(系统重启后本应自动清理,必要时手动清理)
- 清理缩略图缓存:rm -rf ~/.cache/thumbnails/*
五 使用图形化工具与浏览器缓存清理(便于一键操作)
- 系统清理工具:
- BleachBit(sudo apt-get install bleachbit):可清理 APT 缓存、浏览器缓存、系统临时文件等。
- Ubuntu Cleaner(若仓库仍可获取):清理缓存、临时文件、旧内核等。
- 浏览器缓存:
- Chrome:在地址栏输入 chrome://settings/clearBrowserData 并选择清除缓存。
- Firefox:在地址栏输入 about:cache 并执行清除缓存。