温馨提示×

清理Ubuntu缓存的有效途径

小樊
36
2025-11-15 17:20:47
栏目: 智能运维

Ubuntu 清理缓存的有效途径

一 核心清理清单

  • 下表覆盖日常最安全、见效最快的清理项(APT、用户缓存、日志、临时文件等),按需执行即可。
目标 操作 命令示例 说明
APT 缓存 删除所有已下载包 sudo apt clean 清空 /var/cache/apt/archives,释放空间明显
APT 缓存 仅删过期包 sudo apt autoclean 保留当前可用版本,风险最低
无用依赖 移除不再需要的包 sudo apt autoremove 建议先执行:sudo apt autoremove --dry-run 预览
用户缓存 清理缩略图 rm -rf ~/.cache/thumbnails/* 再次访问会重建
用户缓存 清理应用缓存 rm -rf ~/.cache/* 谨慎,避免误删正在使用的应用数据
系统临时文件 清理 /tmp sudo rm -rf /tmp/* 重启后通常会自动清理,手动前确认无正在使用文件
系统日志 按时间保留 sudo journalctl --vacuum-time=3d 保留最近 3 天;也可用 --vacuum-size=100M 限制大小
系统日志 查看占用 journalctl --disk-usage 先评估再清理
孤立库 查找并删除 sudo apt install deborphan && deborphan xargs sudo apt purge -y
图形化工具 一键扫描清理 sudo apt install stacer && stacer 或 sudo apt install bleachbit && bleachbit 适合可视化选择与隐私清理

以上命令均为常用、低风险的系统维护操作,适合作为例行清理清单执行。

二 进阶清理与风险点

  • 旧内核清理(高风险,务必谨慎)
    • 查看当前运行内核:uname -r
    • 列出已安装内核:dpkg --list | grep linux-image
    • 删除旧版本(示例):sudo apt purge linux-image-5.4.0-XX-generic
    • 同步引导配置:sudo update-grub
    • 建议至少保留 当前内核 + 1 个备用,避免回退无门。
  • Snap 与 Flatpak
    • 清理 Snap 缓存:sudo rm -rf /var/lib/snapd/cache/*
    • 卸载未使用运行时:flatpak uninstall --unused
    • 如空间告急,优先卸载不用的 Snap 应用:snap list && sudo snap remove
  • 内存缓存释放(非磁盘空间)
    • 仅清理页缓存:sync && echo 1 | sudo tee /proc/sys/vm/drop_caches
    • 清理目录项与 inode:sync && echo 2 | sudo tee /proc/sys/vm/drop_caches
    • 全部清理:sync && echo 3 | sudo tee /proc/sys/vm/drop_caches
    • 说明:这是释放 内存缓存,对磁盘占用无影响;生产环境不建议频繁执行,可能造成短时性能下降。
  • 重要目录不要直接删除
    • 不要手动删除 /snap、/usr、/var 等系统目录整体;/snap 是 Snap 应用容器,/usr 由包管理器维护,/var 包含日志与数据库等关键可变数据,应仅清理其下子目录的冗余内容。

三 清理前后排错与定位

  • 快速评估空间占用
    • 整体使用:df -h
    • 定位大目录:sudo du -sh /*
    • 分析缓存目录:sudo du -sh /var/cache/apt/archives
    • 可视化分析:sudo apt install ncdu && ncdu /var/cache
  • 日志占用评估与裁剪
    • 查看日志占用:journalctl --disk-usage
    • 按时间或大小裁剪:sudo journalctl --vacuum-time=3d 或 --vacuum-size=500M
  • 清理残余配置(可选)
    • 清理已卸载包的残留配置:dpkg -l | grep ^rc | awk ‘{print $2}’ | xargs sudo dpkg -P
  • 风险提示
    • 执行删除前确认目标路径与作用;对 rm -rf、apt purge 等操作建议先用 --dry-run 或备份关键数据。

四 自动化与维护建议

  • 例行维护(每周/每月)
    • 例行:sudo apt clean && sudo apt autoremove -y
    • 日志:sudo journalctl --vacuum-time=7d
    • 用户缓存:rm -rf ~/.cache/thumbnails/*
  • 定时任务示例(cron)
    • 创建脚本 /usr/local/bin/cleanup.sh:
      • #!/bin/bash
      • sync && echo 3 | sudo tee /proc/sys/vm/drop_caches
      • sudo apt clean && sudo apt autoremove -y
      • sudo journalctl --vacuum-time=7d
      • rm -rf /tmp/*
    • 赋权并加入 cron(每日 2 点):
      • chmod +x /usr/local/bin/cleanup.sh
      • sudo crontab -e 添加:0 2 * * * /usr/local/bin/cleanup.sh
  • 使用建议
    • 生产环境避免频繁 drop_caches;旧内核与日志策略按业务保留周期设置;优先使用包管理器与专用命令而非粗暴删除目录。

0