温馨提示×

ubuntu分卷后如何进行磁盘清理

小樊
44
2025-12-06 08:19:30
栏目: 智能运维

Ubuntu分卷后的磁盘清理指南

一、先定位哪个分区吃空间

  • 查看各分区使用率与挂载点:df -h
  • 查看目录占用:du -sh /home /var /usr(定位大目录)
  • 交互式定位大文件/目录:sudo ncdu /(需安装:sudo apt install ncdu
  • 列出块设备与分区布局:lsblk
  • 图形化分析:打开磁盘占用分析器(Baobab),扫描对应挂载点(如 //home

二、通用清理清单(与是否分卷无关,先释放易回收空间)

  • APT 缓存与无用包
    • 查看缓存大小:du -sh /var/cache/apt/archives
    • 仅清理过期包:sudo apt autoclean
    • 清空缓存:sudo apt clean
    • 移除不再需要的依赖:sudo apt autoremove
  • 旧内核(保留当前正在使用的那一个)
    • 查看内核:dpkg --list | grep linux-image
    • 安全删除旧版:sudo apt-get purge <linux-image-version>,或一键清理旧内核:sudo apt-get autoremove --purge
  • systemd 日志
    • 查看日志占用:journalctl --disk-usage
    • 按时间保留:sudo journalctl --vacuum-time=3d
    • 按大小保留:sudo journalctl --vacuum-size=100M
  • 临时文件与用户缓存
    • 清理系统临时文件:sudo rm -rf /tmp/*(系统运行时谨慎)
    • 清理用户缩略图:rm -rf ~/.cache/thumbnails/*
    • 清空回收站:rm -rf ~/.local/share/Trash/*
  • Snap 旧版本(如启用 Snap)
    • 列出包:snap list --all
    • 删除旧修订:sudo snap remove <package> --revision=<rev>(逐个删除旧修订,避免误删当前)

三、分卷场景的重点排查与处理

  • 若某个挂载点(如 /var/home)空间异常,优先用 ncduBaobab 在该挂载点下定位大文件/目录(例如日志、缓存、镜像、数据库、虚拟机镜像等),再按需清理或迁移。
  • 清理日志时注意日志服务可能正在写入,建议使用 journalctl --vacuum-* 方式收缩,而不是直接 rm -rf /var/log/*(避免破坏正在使用的日志文件与目录结构)。
  • 清理 /tmp 前确认无关键进程在使用;必要时可重启到恢复模式或使用 tmpwatch/systemd-tmpfiles 更安全地处理临时文件。
  • 清理浏览器缓存、下载目录、容器/虚拟机镜像、项目构建产物等用户数据,通常能快速释放大量空间(这些往往位于 /home 下)。

四、图形化工具与一键优化

  • Baobab(磁盘占用分析器):可视化定位大文件/目录,适合分卷后快速找出“哪个挂载点、哪个目录”占用高。
  • Stacer:提供一键清理(APT 缓存、缩略图、崩溃报告等)、启动项管理与系统监控。
  • BleachBit:深度清理浏览器缓存、系统临时文件、日志与隐私痕迹(谨慎选择清理项)。
  • GParted:分区与文件系统调整工具(适合在清理后做容量规划;调整分区前务必备份并谨慎操作)。

五、自动化维护与安全建议

  • 建议每月基础维护一次:sudo apt autoclean && sudo apt autoremove
  • 可加入定时任务(示例每周日凌晨 3 点执行基础清理):
    • echo "0 3 * * 0 sudo apt autoclean && sudo apt autoremove" | crontab -
  • 清理前务必备份重要数据;避免对 /usr、/etc 等关键系统目录执行盲目删除;使用 rm -rf 前再三确认路径与通配符范围。

0