1. 思路
转换原始vmdk镜像为可扩展的vdi(虚拟磁盘镜像)镜像,扩展vdi,重新挂在虚拟磁盘,利用pv(物理卷)、vg(卷组)、lv(逻辑卷)实现根目录或其他目录的扩展。
2. 转换并扩展vdi
停止虚拟机,此处test虚拟机为例
# vagrant halt test
转换镜像
# cd ~/VirtualBox\ VMs/test_1489122040823_24948
# VBoxManage clonehd "box-disk1.vmdk" "clone-disk1.vdi" --format vdi
扩展镜像,此处以扩展到100G为例
# VBoxManage modifyhd "clone-disk1.vdi" --resize 102400
重新挂载磁盘到虚拟机,并启动虚拟机
# VBoxManage storageattach test_1489122040823_24948 --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium clone-disk1.vdi
启动虚拟机
# vagrant up
进入虚拟机,查看磁盘,并格式化,此处以/dev/sda/ 为例
# fdisk -l
# fdisk /dev/sda
a. 按p显示分区表,默认是 sda1 和 sda2。
b. 按n新建主分区。
c. 按p设置为主分区。
d. 输入3设置为第三分区。
e. 输入两次回车设置默认磁盘起始位置。
f. 输入t改变分区格式
g. 输入3选择第三分区
h. 输入8e格式成LVM格式
i. 输入w执行
重新启动虚拟机
# reboot
创建物理卷
# pvcreate /dev/sda3
查看卷组,扩展到相应卷组,这里以centos为例
# vgdisplay
# vgextend centos /dev/sda3
扩展到相应逻辑卷,这里以/dev/mapper/centos-root为例
# lvextend -l +100%FREE /dev/mapper/centos-root
更新文件系统,centos7和centos6使用不同命令
centos7
# xfs_growfs /dev/mapper/centos-root
centos6
# resize2fs /dev/mapper/centos-root
查看目录扩展是否成功
# df -h