在 CentOS + VirtualBox 环境下扩容磁盘,一般分为 VirtualBox 扩容 → CentOS 内部识别并扩展分区/文件系统 两步。下面给你一套最常用、最稳妥的做法(以 CentOS 7/8,使用 LVM 为例,也包含非 LVM 情况)。
poweroff
VBoxManage list hdds
VBoxManage modifyhd "CentOS.vdi" --resize 51200
单位 MB,51200 = 50GB
只支持 VDI / VHD,不支持固定大小的 VMDK(需先转格式)
lsblk
fdisk -l
你会看到:
/dev/sda 容量变大了/dev/sda2)还是原来的大小fdisk /dev/sda
操作:
p 查看d 删除 sda2(不要保存前别慌,数据不会丢)n 新建分区8e(Linux LVM)w 保存partprobe
pvresize /dev/sda2
lvdisplay
lvextend -l +100%FREE /dev/centos/root
# CentOS 7/8 默认 xfs
xfs_growfs /
# 如果是 ext4
resize2fs /dev/centos/root
df -h
fdisk /dev/sda
# 删除并重建分区,起始扇区不变
partprobe
resize2fs /dev/sda1 # ext4
# 或
xfs_growfs /mnt/xxx # xfs
VBoxManage clonehd old.vmdk new.vdi --format VDI
一定是 分区没扩 / LVM 没扩
✅ 安装 CentOS 时 使用 LVM
✅ 磁盘用 VDI 动态分配
如果你愿意,可以贴一下:
lsblk
df -h
fdisk -l
我可以直接按你的环境一步步给你命令。