vagrant box centos7硬盘扩容【不删除原数据】

笔者之前一直在使用vagrant作为虚拟机使用。

vagrant的好处自然不必说,只是有一天遇到了一个麻烦事——虚拟硬盘空间不!够!了!

笔者使用了df -h命令一看,结果发现,主硬盘(/dev/sda1)总空间居然只有10G,然而一般的系统镜像初始大小就超过9G。

在网上一查,发现vagrant其实最初设计定位是快速还原运行环境,于是vagrant一般情况下在虚拟机初始化阶段不会留出很足的主硬盘空间。

准备工作

环境变量

在这次操作中,我们需要用到virtualbox提供的vboxmanage命令。所以我们首先需要将此命令添加到环境变量中。

在windows下的操作,就是将virtualbox的安装路径添加至path项。unix系统中应该类似。

设置教程:https://www.cnblogs.com/-mrl/p/13931641.html

打开box目录,cmd切换到该目录

记录原始硬盘信息

输入如下命令

vboxmanage showhdinfo centos-vm-disk1.vmdk

记录下原硬盘的uuid

制作扩容版硬盘

首先是将原硬盘进行克隆操作

vboxmanage clonehd "centos-vm-disk1.vmdk" "new-virtualdisk.vdi" --format vdi

将硬盘克隆成了vdi格式后,就可以开始下一步的扩容操作了:

vboxmanage modifyhd "new-virtualdisk.vdi" --resize 30720

其中·30720单位为MB,即表示30G空间。81920则为80G

接下来将硬盘文件转回原来的格式,以及建议不要直接覆盖原来的 vmdk硬盘文件,以作备份。

VBoxManage clonehd "new-virtualdisk.vdi" "resized.vmdk" --format vmdk

记录一下新vmdk文件的uuid信息。到这一步,带有原数据和新尺寸的硬盘就制作完毕了。

以上步骤截图:

使用新制造硬盘替换原硬盘重新挂载磁盘到虚拟机

VBoxManage storageattach 16c94808-3de9-4de5-8918-d8b875fbc5e9 --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium resized.vmdk

"SATA Controller" 可以从vboxmanage showvminfo 16c94808-3de9-4de5-8918-d8b875fbc5e9查看
16c94808-3de9-4de5-8918-d8b875fbc5e9 是容器名称可以从vboxmanage list vms查看

将新硬盘载入使用

重新启动虚拟机

vagrant reload #重新开启虚拟机
vagrant ssh # 进入虚拟机

查看磁盘,使用fdisk分区扩容

sudo fdisk -l
sudo fdisk /dev/sda
按p显示分区表,默认是 sda1 和 sda2。
按n新建主分区。
按p设置为主分区。
输入3设置为第三分区。
输入一次回车设置默认磁盘位置。
再输入一次回车设置默认磁盘位置。
输入t改变分区格式
输入3选择第三分区
输入8e格式成LVM格式
输入w执行保存

重启虚拟机

sudo reboot

以上步骤截图

再次登入虚拟机 

查看【将system 类型需是Linux LVM】

sudo fdisk -l

利用pvcreate命令给新的分区创建物理卷

sudo pvcreate /dev/sda3

查看VG Name,我自己的VG Name是cl

sudo pvdisplay | grep "VG Name"

查看卷组,将新分区扩展到cl这个组

sudo vgdisplay
sudo vgextend cl /dev/sda3

扩展逻辑分区

sudo lvextend /dev/mapper/cl-root /dev/sda3

更新文件系统,resize并且生效

centos6

sudo resize2fs /dev/mapper/cl-root

centos7

sudo xfs_growfs /dev/mapper/cl-root

以上截图

 

 回到物理主机,可将原来的镜像删除,不然站存储空间【老的vmdk和新建的vdi文件】

大功告成

vagrant reload重启虚拟机查看效果

未扩容前截图:

 扩容后截图纪念【扩容到80G】:

 

 

posted @ 2020-11-05 15:23  一个人的孤独自白  阅读(871)  评论(0编辑  收藏  举报