将 Vagrant 的 CentOS 镜像扩容到 800G
vagrant 默认的 centos7.2box 的容量只有 8G...
8G?!
能做得了什么?这点容量撑不了几周就爆满。也许官方是出于轻便化的考量,但作为要在 vagrant 上搭建各种开发环境的开发人员,8G 的容量只能让 vagrant 沦为鸡肋。
幸好,网上有大神们总结如何给vagrant扩容。以下是我参照教程后的实操过程,扩容到了800G, 亲测可用!
看完觉得太难操作的,也可直接下载我扩容好的镜像
准备阶段
- 关闭虚拟机
$ vagrant halt
- 转换镜像
$ cd ~/VirtualBox\ VMs/centos_default_1533259579120_24934
$ VBoxManage clonehd "centos-vm-disk1.vmdk" "clone-disk1.vdi" --format vdi
- 扩展镜像
$ VBoxManage modifyhd "clone-disk1.vdi" --resize 819200 # 扩展到800G
- 重新挂载磁盘到虚拟机,并启动虚拟机
$ VBoxManage storageattach centos_default_1533259579120_24934 --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium clone-disk1.vdi
$ vagrant up # 开启虚拟机
$ vagrant ssh # 进入虚拟机
虚拟机内扩容
以下是在虚拟机内操作
- 查看磁盘,并格式化
$ sudo fdisk -l
$ sudo fdisk /dev/sda
# 按p显示分区表,默认是 sda1 和 sda2。
# 按n新建主分区。
# 按p设置为主分区。
# 输入3设置为第三分区。
# 输入两次回车设置默认磁盘起始位置。
# 输入t改变分区格式
# 输入3选择第三分区
# 输入8e格式成LVM格式
# 输入w执行
- 重启虚拟机
$ sudo reboot
再次登入虚拟机
- 创建物理卷
$ sudo pvcreate /dev/sda3
- 查看卷组,扩展到相应卷组
$ sudo vgdisplay
$ sudo vgextend centos /dev/sda3
- 扩展到相应逻辑卷
$ sudo lvextend -l +100%FREE /dev/mapper/centos-root
- 更新文件系统
$ sudo xfs_growfs /dev/mapper/centos-root
大功告成
至此,扩展成功...
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 799G 2.5G 797G 1% /
devtmpfs 299M 0 299M 0% /dev
tmpfs 308M 0 308M 0% /dev/shm
tmpfs 308M 4.3M 304M 2% /run
tmpfs 308M 0 308M 0% /sys/fs/cgroup
/dev/sda1 497M 164M 334M 33% /boot
none 112G 81G 32G 72% /vagrant
tmpfs 62M 0 62M 0% /run/user/1000
回到物理主机,可将原来的镜像删除
$ rm -f centos-vm-disk1.vmdk
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: