将 Vagrant 的 CentOS 镜像扩容到 800G

vagrant 默认的 centos7.2box 的容量只有 8G...

8G?!

黑人问号

能做得了什么?这点容量撑不了几周就爆满。也许官方是出于轻便化的考量,但作为要在 vagrant 上搭建各种开发环境的开发人员,8G 的容量只能让 vagrant 沦为鸡肋。

幸好,网上有大神们总结如何给vagrant扩容。以下是我参照教程后的实操过程,扩容到了800G, 亲测可用!

扩容效果

看完觉得太难操作的,也可直接下载我扩容好的镜像

链接:https://pan.baidu.com/s/1pDWPsuImUPGhrSlh3... 密码:u1eg

准备阶段

  • 关闭虚拟机
$ 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 协议》,转载必须注明作者和本文链接
it书童
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 2

不是可以配置共享目录的吗

5年前 评论
it书童 (楼主) 5年前

祝镜像早日崩溃

5年前 评论
it书童 (楼主) 5年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!