在管理磁盘空间前,需先了解空间使用情况,常用命令和工具如下:
df -h:查看已挂载分区的磁盘使用情况(总容量、已用空间、可用空间),快速识别占用高的分区(如根分区/)。du -sh *:查看当前目录下各文件/文件夹的大小,可递归深入具体目录(如du -sh /var/*查看/var目录下各文件夹大小)。lsblk:查看磁盘分区布局(如/dev/sda的分区情况),确认新增空间是否已分配给系统。APT包管理器会缓存下载的软件包(位于/var/cache/apt/archives),占用大量空间。可通过以下命令清理:
sudo apt autoclean(删除已过期的.deb包,保留最新版本)。sudo apt clean(删除所有缓存的.deb包)。sudo apt autoremove(删除不再需要的依赖包,如卸载软件后遗留的库文件)。系统日志(如/var/log/syslog、/var/log/journal)会随时间增长占用大量空间。可通过以下方式清理:
sudo rm -rf /var/log/*.gz(删除压缩的旧日志)、sudo rm -rf /var/log/*.1(删除轮转后的旧日志)。sudo journalctl --vacuum-size=100M(限制日志文件总大小为100MB)、sudo journalctl --vacuum-time=7d(删除7天前的日志)。临时文件(位于/tmp、/var/tmp)通常无需长期保留,可通过以下命令清理:
sudo rm -rf /tmp/*(删除/tmp下的所有临时文件)。rm -rf ~/.cache/thumbnails/*(删除桌面环境的缩略图缓存,释放用户目录空间)。Snap包会保留旧版本(位于/var/lib/snapd/snaps),占用额外空间。可通过以下命令删除旧版本:
snap list(显示所有Snap包及其版本)。sudo snap remove <package-name> --revision=<revision-number>(替换为具体包名和旧版本号,如sudo snap remove firefox --revision=123)。删除的文件默认存放在回收站(~/.local/share/Trash),需手动清空:
rm -rf ~/.local/share/Trash/*(删除回收站中的所有文件)。若日常清理后仍空间不足,需扩展磁盘空间,分为扩展虚拟磁盘和调整系统分区两步:
需通过虚拟化管理工具(如VMware、VirtualBox)扩展虚拟磁盘容量:
扩展虚拟磁盘后,需在Ubuntu中调整分区以使用新增空间:
sudo apt update && sudo apt install gparted。sudo gparted),选择需要扩展的分区(如/dev/sda1,根分区)。sudo pvdisplay(确认新增空间已分配给物理卷)。sudo vgextend <卷组名> /dev/sdaX(如sudo vgextend ubuntu-vg /dev/sda3)。sudo lvextend -l +100%FREE /dev/<卷组名>/<逻辑卷名>(如sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv)。sudo resize2fs /dev/<卷组名>/<逻辑卷名>(如sudo resize2fs /dev/ubuntu-vg/ubuntu-lv)。apt autoclean、rm -rf /tmp/*等清理操作。df -h或Disk Usage Analyzer定期检查,及时发现空间增长异常。/etc/logrotate.conf,调整日志保留策略(如压缩旧日志、限制大小)。通过以上方法,可有效管理Ubuntu虚拟机的磁盘空间,避免因空间不足导致的系统问题。操作前请务必备份重要数据,以防误操作导致数据丢失。