将 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 协议》,转载必须注明作者和本文链接
          
                    
                    
          
          
                关于 LearnKu
              
                    
                    
                    
 
推荐文章: