Ubuntu Minimal磁盘空间管理指南
Ubuntu Minimal作为轻量级系统,初始占用空间小,但随着使用仍可能面临磁盘空间不足的问题。以下是针对性的管理方法,涵盖查看、清理、扩展及预防等方面:
要管理磁盘空间,首先需了解当前使用状态,常用命令如下:
df -h:以人类可读格式(GB/MB)显示所有挂载分区的总容量、已用空间、剩余空间及使用百分比,快速识别空间紧张的分区(如根分区/)。du -sh /path:递归计算指定目录(如/var、/home)的总大小,定位占用空间大的目录(例如du -sh /var/log可查看日志文件大小)。ncdu:交互式磁盘使用分析工具(需安装:sudo apt install ncdu),通过图形界面直观展示目录占用情况,支持排序和删除操作,比du更易用。APT安装软件时会缓存.deb包,占用/var/cache/apt/archives目录空间。使用以下命令清理:
sudo apt clean # 清理所有缓存包
sudo apt autoclean # 仅清理旧版本缓存包
该操作可释放数GB空间(取决于安装软件数量)。
旧内核版本会占用/boot分区空间(该分区通常较小,易满)。使用以下命令安全删除旧内核:
sudo apt autoremove --purge # 自动移除不再需要的内核及依赖
或手动查看并删除旧内核(通过dpkg --list | grep linux-image筛选版本)。
/tmp目录存储临时文件(如软件安装时的缓存),可安全删除:
sudo rm -rf /tmp/* # 删除/tmp下所有文件(重启后自动清空)
此外,系统日志文件(如/var/log)可能占用大量空间,可使用journalctl清理日志:
sudo journalctl --vacuum-size=100M # 限制日志文件大小为100MB
sudo journalctl --vacuum-time=3d # 删除3天前的日志
通过以下命令卸载不再使用的软件包:
sudo apt remove package-name # 卸载指定软件(如sudo apt remove vim)
sudo apt autoremove # 自动移除无用的依赖包
若使用Snap安装软件,可通过sudo snap remove snapname卸载,并用sudo snap remove snapname --revision revision删除旧版本。
系统生成的缩略图(如图片、视频预览)存储在/.cache/thumbnails目录,可删除:
rm -rf /.cache/thumbnails/*
该操作不会影响原文件,仅删除预览缓存。
若清理后仍空间不足,可通过以下方式扩展:
lsblk(查看设备名,如/dev/sdb)。sudo mkfs.ext4 /dev/sdb # 格式化为ext4(根据需求选文件系统)
sudo mkdir /mnt/newdisk # 创建挂载点
sudo mount /dev/sdb /mnt/newdisk # 挂载
/etc/fstab,添加一行:/dev/sdb /mnt/newdisk ext4 defaults 0 2。若系统使用LVM(逻辑卷管理),可动态扩展逻辑卷:
sudo lvextend -l +100%FREE /dev/mapper/vg-name-lv-name(如/dev/mapper/ubuntu--vg-ubuntu--lv)。sudo resize2fs /dev/mapper/vg-name-lv-name(适用于ext4文件系统)。Docker容器和镜像可能占用大量空间(默认存储在/var/lib/docker)。可将数据迁移到更大的分区:
sudo systemctl stop docker。sudo rsync -avzP /var/lib/docker/ /data/docker/lib/(/data/docker/lib/为新目录)。/lib/systemd/system/docker.service,在ExecStart行添加graph=/data/docker/lib/docker。sudo systemctl daemon-reload && sudo systemctl restart docker。apt clean、journalctl --vacuum),避免垃圾文件堆积。/home、/var),避免根分区空间耗尽。例如,/var分区用于存储日志、数据库等,可分配10-15GB;/home分区用于个人文件,分配剩余空间的70%以上。通过以上方法,可有效管理Ubuntu Minimal系统的磁盘空间,确保系统稳定运行。操作前请务必备份重要数据,避免意外损失。