ubuntu系统如何有效回收磁盘空间
小樊
42
2025-12-17 22:25:12
Ubuntu 有效回收磁盘空间的实用步骤
一 快速定位占用
- 查看整体磁盘使用:使用命令 df -h,重点关注 Use% 接近 100% 的分区(如 /、/boot、/var)。
- 图形化定位大文件与目录:打开 磁盘占用分析器 Disk Usage Analyzer,扫描系统盘,按大小排序,定位大目录(如日志、缓存、镜像、虚拟机镜像等)。
- 查找超大单文件:在终端执行 sudo find / -type f -size +1G -exec ls -lh {} ; 2>/dev/null,列出大于 1GB 的文件,逐一确认是否可删除或迁移。
二 系统级清理命令
- APT 缓存与无用依赖
- 清理旧版本包缓存:sudo apt-get autoclean
- 清理全部包缓存:sudo apt-get clean
- 删除不再需要的依赖:sudo apt-get autoremove
- 连同配置文件一并删除:sudo apt-get autoremove --purge
- 旧内核(谨慎操作)
- 查看当前内核:uname -a
- 列出已安装内核:dpkg --list 'linux-image’*
- 删除指定旧内核(将 VERSION 替换为实际版本):sudo apt-get purge linux-image-VERSION;建议至少保留 2–3 个最新内核以便回退。
- systemd 日志
- 查看日志占用:journalctl --disk-usage
- 仅保留最近 7 天:sudo journalctl --vacuum-time=7d;或限制总大小:sudo journalctl --vacuum-size=500M。
- 缩略图缓存
- 查看大小:du -sh ~/.cache/thumbnails
- 清空缓存:rm -rf ~/.cache/thumbnails/*(注意这是用户级目录)。
- 临时文件
- 清理 /tmp:sudo rm -rf /tmp/*(系统重启后/tmp通常会自动清理,生产环境请先确认无正在使用文件)。
三 按场景清理
- Snap 旧版本回收(Snap 默认会保留多个旧修订)
- 查看 Snap 占用:du -h /var/lib/snapd/snaps
- 删除所有已禁用的旧修订(先关闭所有 Snap 应用):
- 脚本方式:
- 创建脚本 cleanup_snap.sh
- 内容:
- #!/bin/bash
set -eu
snap list --all | awk ‘/disabled/{print $1, $3}’ | while read snapname revision; do
snap remove “$snapname” --revision=“$revision”
done
- 赋权并运行:chmod +x cleanup_snap.sh && sudo ./cleanup_snap.sh
- Docker 环境
- 删除未使用数据(镜像、容器、网络、构建缓存):docker system prune -af --volumes
- 浏览器缓存
- Chrome:在地址栏输入 chrome://settings/clearBrowserData 选择清理类型并执行。
- Firefox:在地址栏输入 about:cache 后按页面提示清理,或在设置中清理历史与缓存。
- 第三方清理工具(可选)
- BleachBit:sudo apt-get install bleachbit,图形界面勾选项目后清理(谨慎选择系统项)。
- deborphan:查找孤立包:sudo apt-get install deborphan;删除:sudo apt-get remove --purge $(deborphan)。
四 图形化工具与进阶处理
- 图形化工具
- 磁盘占用分析器 Disk Usage Analyzer:可视化定位大目录与文件,便于精准删除或迁移。
- Gnome 磁盘工具:用于查看分区、调整大小、加密等(如需扩容,请先备份)。
- 系统监视器:查看文件系统与资源占用概览。
- 进阶处理
- 分区扩容:在已备份的前提下,使用 GParted 调整分区大小;虚拟机可在虚拟化平台先扩容虚拟磁盘后再在系统内扩容分区。
- 清理残余配置(谨慎):dpkg -l | grep ^rc | awk ‘{print $2}’ | sudo xargs dpkg -P(删除已卸载但残留配置文件的包)。
五 安全与自动化建议
- 操作前务必备份重要数据;删除内核、日志、容器镜像等前先确认不再需要。
- 删除旧内核时,务必保留至少 2–3 个最新内核,避免更新失败导致无法启动。
- 建议将常用清理命令加入例行维护(如每周执行一次):
- 示例脚本(按需调整):
- #!/bin/bash
sudo apt-get autoremove -y && sudo apt-get autoclean -y
sudo journalctl --vacuum-time=7d
rm -rf ~/.cache/thumbnails/*
- 若空间仍紧张,优先迁移或压缩大文件(如虚拟机镜像、数据库转储、日志归档),再考虑扩容磁盘或分区。