vagrant 增加硬盘容量实践记录

总体思路

1 把virturalbox挂载的文件vmdk文件 转成vdi
2 修改容量大小
3 重新挂载

什么是vmdk格式/vdi

VMDK(VMWare Virtual Machine Disk Format)是[虚拟机]VMware创建的虚拟硬格式
vdi 是可以扩展的格式

几种虚拟文件格式之间的区别

VirtualBox支持多种格式的虚拟磁盘,几个主要格式列举如下:

  • VDI

  • VMDK

  • VHD

  • HDD
    但是我不太清楚这些格式之间的区别。期望能从以下方面对上述格式做个对比:

  • 能够使用动态大小调整

  • 可以做快照

  • 能够以较小代价将我的虚拟机移动到另一个操作系统或者虚拟机。最好能在ubuntu上正常运行。

  • 性能

了解vmmanager 工具

VBoxManage 是vmware 的命令行工具,所有在GUI里面进行的操作可以通过这个命令行来解决:
比如


VBoxManage createvm --name UbuntuRDHome --register

注册虚拟机

    VBoxManage registervm /UbuntuRDHome.vbox

仅注销虚拟机

    VBoxManage unregistervm UbuntuRDHome

删除虚拟机(!!!会删除所有虚拟硬盘,谨慎操作!!!)

    VBoxManage unregistervm --delete UbuntuRDHome

一下的操作我们全都使用VBoxManage 命令行完成

1 确保vagrant 关闭

vagrant halt

vagrant status来确认

2 修改格式为vdi

cd ~/VirtualBox\ VMs/

里面会列出创建的vm列表。

xy:VirtualBox VMs xy$ ls -lht
total 0
drwx------  9 xy  staff   306B  6 13 14:37 mysql_default_1522726156590_46178
drwx------  8 xy  staff   272B  6 13 13:55 coucou_default_1520934568591_77737
drwxr-xr-x  6 xy  staff   204B  3 29 00:12 ubun
drwx------  7 xy  staff   238B  3 25 09:05 xy_default_1521939722269_36147
drwxr-xr-x  6 xy  staff   204B  3 16 00:26 coucou
drwx------  6 xy  staff   204B  3 16 00:08 vagrant_coucou_default_1521130115612_31697
drwx------  7 xy  staff   238B  3 13 17:52 test_default_1520929306698_18257
drwx------  6 xy  staff   204B  3 13 17:47 coucou_default_1520934471872_11821

文件夹的名字即为vm_id
进入到你要更改的vm_id,并执行改格式的命令

VBoxManage clonehd "ubuntu-xenial-16.04-cloudimg.vmdk" "ubuntu-xenial-16.04-cloudimg.vdi" --format vdi

完成后系统会提示成功

3 resize

VBoxManage modifyhd "ubuntu-xenial-16.04-cloudimg.vdi" --resize 20480

单位为M,20480即为20G

4 重新挂载

VBoxManage storageattach coucou_default_1520934568591_77737 --storagectl "SCSI" --port 0 --device 0 --type hdd --medium ubuntu-xenial-16.04-cloudimg.vdi

--storagectl "SCSI" 根据不同的操作系统类型不通,常见的还有 "SATA Contr"

5 vagrant up

通过

df -h 

来确认硬盘大小

refer

https://tuhrig.de/resizing-vagrant-box-disk-space/
https://vimsky.com/article/3578.html

你可能感兴趣的:(vagrant 增加硬盘容量实践记录)