温馨提示×

Ubuntu系统清理内存的方法有哪些

小樊
35
2025-11-19 18:09:44
栏目: 智能运维

Ubuntu清理内存与缓存的实用方法

一 先确认内存与缓存的真实占用

  • 使用命令查看内存概况:free -h(关注 availablebuff/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
    • 仅保留 500MBsudo journalctl --vacuum-size=500M
  • 临时文件与缩略图:
    • 清理 /tmpsudo rm -rf /tmp/*(系统重启后本应自动清理,必要时手动清理)
    • 清理缩略图缓存:rm -rf ~/.cache/thumbnails/*

五 使用图形化工具与浏览器缓存清理(便于一键操作)

  • 系统清理工具:
    • BleachBit(sudo apt-get install bleachbit):可清理 APT 缓存、浏览器缓存、系统临时文件等。
    • Ubuntu Cleaner(若仓库仍可获取):清理缓存、临时文件、旧内核等。
  • 浏览器缓存:
    • Chrome:在地址栏输入 chrome://settings/clearBrowserData 并选择清除缓存。
    • Firefox:在地址栏输入 about:cache 并执行清除缓存。

0