服务器与大带宽专家 · 持牌IDC/CDN/ISP服务商
简米科技官网JIANMI TECH
资讯 2026-10-18 更新于 2026-10-18 简米科技 3,136 字 7 分钟阅读

虚拟机安装Linux空间不足怎么办?Linux磁盘不足如何扩容?

导读虚拟机安装Linux时硬盘空间不足,最直接的办法是扩容虚拟磁盘,再调整分区和文件系统;如果无法扩容,就清理日志缓存,或把大目录挂载到新硬盘,很多人在VMware或VirtualBox里装完Ubuntu、CentOS、Debian,跑几天就发现根分区飘红,别急着重装系统,空间不足通常分两种:一种是虚拟磁盘文件本身……

虚拟机安装Linux时硬盘空间不足,最直接的办法是扩容虚拟磁盘,再调整分区和文件系统;如果无法扩容,就清理日志缓存,或把大目录挂载到新硬盘。

很多人在VMware或VirtualBox里装完Ubuntu、CentOS、Debian,跑几天就发现根分区飘红,别急着重装系统,空间不足通常分两种:一种是虚拟磁盘文件本身太小,另一种是磁盘变大了但分区没跟着长,下面按诊断、扩容、清理、迁移的顺序拆开讲。

虚拟机安装Linux时硬盘空间不足怎么办?先诊断再动手

用三条命令定位空间占用

连上SSH或打开终端,依次执行:

  • df -h:看哪个分区使用率超过80%,重点盯和/var。
  • du -sh /var/ | sort -rh | head -10:找出/var下最占地方的儿子。
  • lsblk和fdisk -l:确认磁盘总容量、分区表类型、有没有未分配空间。

业内专家指出,多数Linux虚拟机空间告急,罪魁祸首不是用户数据,而是/var/log/journal、包管理器缓存和容器镜像。

常见原因:日志、缓存、快照、分区未扩展

  • systemd日志默认可能吃掉数GB,journalctl --disk-usage一看便知。
  • apt或yum缓存长期不清理,/var/cache会膨胀。
  • 虚拟机快照占用的空间在宿主机上看不见,但会挤占虚拟磁盘可用量。
  • 你在虚拟机设置里把硬盘从20GB扩到40GB,但Linux分区表还是20GB,多出来的空间处于“未分配”状态。

VMware与VirtualBox对比:Linux虚拟机磁盘扩容哪家强?

虚拟机安装Linux空间不足怎么办?Linux磁盘不足如何扩容?

对比项 VMware Workstation VirtualBox
图形界面扩容 虚拟机设置→硬盘→扩展 虚拟介质管理→调整大小
命令行扩容 vmware-vdiskmanager -x 40GB disk.vmdk VBoxManage modifyhd disk.vdi --resize 40960
扩容前要求 删除所有快照,关机 关机,不能有快照
分区调整 进入Linux后操作 进入Linux后操作

VMware虚拟机Linux根分区满了怎么清理?

先关机,在VMware中选中虚拟机→设置→硬盘→扩展→输入新容量(如从20GB改为40GB),开机后执行:

sudo growpart /dev/sda 3
sudo resize2fs /dev/sda3

如果根分区在LVM里,命令换成:

sudo pvresize /dev/sda3
sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
sudo resize2fs /dev/ubuntu-vg/ubuntu-lv

注意:growpart需要安装cloud-guest-utils,CentOS用yum install cloud-utils-growpart。

VirtualBox虚拟硬盘空间不够用如何扩容?

关机后,在宿主机终端运行:

VBoxManage modifyhd "C:Users你的用户名VirtualBox VMsLinuxLinux.vdi" --resize 40960

单位是MB,40960就是40GB,开机后用fdisk -l确认磁盘变大了,再按上面LVM或growpart流程扩展分区,如果虚拟硬盘是固定大小,VirtualBox也支持扩容,但速度比动态分配慢一些。

Linux虚拟机磁盘扩容后分区没变大怎么办?

这是最典型的“白扩了”,原因有两个:一是分区表没更新,二是文件系统没扩展,按顺序检查:

  1. lsblk看/dev/sda总大小是否增加。
  2. parted /dev/sda print

    虚拟机安装Linux空间不足怎么办?Linux磁盘不足如何扩容?

    看分区结束扇区是否顶到磁盘末尾。

  3. 如果分区没变,用parted或fdisk删除旧分区再重建(不格式化,数据不丢,但操作前备份)。
  4. 分区变了,文件系统没变:ext4用resize2fs,xfs用xfs_growfs。

行业共识认为,操作分区表前务必备份重要数据,尤其是生产环境的虚拟机。

低成本甚至零成本扩容Linux虚拟机硬盘方案

不是所有人都愿意加钱买更大宿主机硬盘,下面这些方法基本不花钱:

  • 删除旧快照:VMware和VirtualBox的快照文件很占空间,保留最近一个即可。
  • 压缩虚拟磁盘:VirtualBox用VBoxManage modifymedium --compact,VMware用vmware-vdiskmanager -k。
  • 清理包缓存:apt clean、yum clean all、dnf clean all。
  • 限制日志大小:编辑/etc/systemd/journald.conf,设置SystemMaxUse=200M,重启systemd-journald。
  • 把Docker数据迁走:/var/lib/docker往往几十GB,挂载新硬盘后改data-root。
  • 使用宿主机共享文件夹:VirtualBox的共享文件夹、VMware的共享目录,把大文件放宿主机。

据统计,清理日志和缓存通常能释放出数GB到数十GB不等的空间,具体取决于运行时长和服务数量。

国内用户常用的Linux虚拟机磁盘扩容工具

  • GParted Live ISO:图形化调整分区,适合不熟悉命令行的用户,下载ISO挂载到虚拟机光驱,启动后拖动分区条即可。
  • 系统自带命令行:growpart、resize2fs、xfs_growfs,轻量且可靠。
  • 国内云厂商控制台:简米云、酷番云、华为云都支持在线扩容云盘,扩容后需在实例内执行

    虚拟机安装Linux空间不足怎么办?Linux磁盘不足如何扩容?

    growpart和resize2fs,注意:云盘扩容可能产生额外费用,按量付费实例尤其要留意账单。

  • PVE和KVM:qm resize 100 virtio0 +10G,然后在虚拟机内扩展分区。

虚拟机安装Linux硬盘空间不足的常见问答

Q1:虚拟机磁盘扩容会影响原有数据吗?

正常扩容分区表和文件系统不会删除数据,但删除分区再重建时,如果起始扇区写错,可能破坏文件系统,操作前用dd或快照备份关键数据,LVM扩容是安全的,非LVM的growpart也安全。

Q2:Windows宿主机下VMware扩容后Linux仍显示空间不足怎么办?

先确认虚拟机设置里硬盘容量已增加,再进Linux执行lsblk,如果/dev/sda变大了但分区没变,用growpart /dev/sda 3扩展分区,如果分区已变但df -h没变,用resize2fs /dev/sda3扩展文件系统,两步都做完,df -h才会显示新容量。

Q3:云服务器安装Linux硬盘空间不足,能在线扩容吗?

多数国内云厂商支持在线扩容系统盘和数据盘,扩容后无需重启实例,以简米云为例,控制台扩容云盘后,SSH登录执行growpart /dev/vda 1和resize2fs /dev/vda1即可,如果云盘是XFS文件系统,用xfs_growfs /,在线扩容通常按容量差价计费,包年包月实例补差价,按量付费实例按新容量计费。

虚拟机安装Linux时硬盘空间不足,优先扩容虚拟磁盘并扩展分区,其次清理日志缓存和迁移大目录。 记住两条命令:growpart扩分区,resize2fs或xfs_growfs扩文件系统,大部分空间问题都能解决。

分享本文
本文为 简米科技官网 原创,已由运维技术专家审核。转载请注明来源:原文链接
售前咨询 服务热线 售后 邮箱