如何动态修改VirtualBox磁盘大小

今天在下载Android源代码时,忽然虚拟机说磁盘不够了,真是头大,当时创建这个虚拟机的时候直接按推荐的大小来建,没想到Android源代码这么吃空间。 没办法,总不能从新再创建一个新磁盘吧,一想到又要一堆配置。。。google了一下,找到下面的方法来实现动态修改虚拟机的磁盘大小。

说是动态修改,其实是先创建一个我们期望大小的新磁盘,然后将现有磁盘的内容clone到新磁盘,再用新磁盘替换掉原来的磁盘。
  1. VBoxManage createhd –filename new-file.vdi –size size-in-MB –remember
  2. VBoxManage clonehd oldfile newfile –existing
  3. 到VirtualBox的GUI去,换掉虚拟机的硬盘.再启动系统
  4. 使用DiskUtility格式化新增加的空间,mount这个卷.

其实我们可以通过下面的命令来完成:

VBoxManage createhd –filename F:\VirtualPC\Disks\Ubuntu120.vdi –size 40000
VBoxManage clonehd F:\VirtualPC\Disks\Ubuntu.vdi  F:\VirtualPC\Disks\Ubuntu120.vdi –-existing

VBoxManage.exe处于c:\Program Files\Oracle\VirtualBox目录下面,我们可以将这个目录加入系统环境变量(i.e. PATH)

PATH=%PATH%;c:\Program Files\Oracle\VirtualBox

后记:这种方法有一个问题是,新加的空间会被放入一个新的卷(Volume),需要先格式化然后加载进来。如果你想只要一个Volume,可以通过GUI直接创建一个需要大小的磁盘,然后执行clone操作。

参考资料:

  • http://serverfault.com/questions/365423/how-to-run-vboxmanage-exe
  • http://www.kiwwito.com/article/expanding-virtualbox-dynamic-hard-disks

你可能感兴趣的:(如何动态修改VirtualBox磁盘大小)