您的位置:首页 > 其它

备忘,调整虚拟机硬盘大小

2013-11-22 11:47 274 查看
不是收缩,是虚拟机预设了40G,转成img的话太大了,需要调小一点,vdi格式,结果各种尝试,下面的方法貌似有戏,先备忘。

1、调整vbox磁盘大小,可大可小

原文地址:http://my.oschina.net/fjxy/blog/81823


----------------------------------------------


如何动态修改VirtualBox磁盘大小

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

VBoxManage createhd –filename new-file.vdi –size size-in-MB –remember
VBoxManage clonehd oldfile newfile –existing
到VirtualBox的GUI去,换掉虚拟机的硬盘.再启动系统
使用DiskUtility格式化新增加的空间,mount这个卷.

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

view
source

print?

1
VBoxManage
createhd –filename F:\VirtualPC\Disks\Ubuntu120.vdi –size
40000
2
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

-----------------------------------------------------------------------------------------------------------------------------------------------------------------
以上,类似于找一个新盘,然后把老盘整个ghost过去一个,上述命令有个别语法问题,需要自己调一下;

vm应该也可以这么做(使用vmware converter,重新转换一次VM,就可以重新指定硬盘大小),当然vm还有其他磁盘工具,资料比较多,多数是硬盘不够大要扩大磁盘容量,都没尝试

2、扩充vbox磁盘容量,只能调大

命令:vboxmanager modifyhd *.vdi --resize 10240

10240M=10G

注意:vbox4.0以上版本支持--resize,如果要缩小会报错,只能调大,至于调大以后的效果,待验证

上述命令调整后需要在系统内重新设置,使新增空间与原有空间合并

3、压缩vdi文件大小

网上比较多,大概过程是先把没用的磁盘空间全部写成0,然后使用vbox的命令压缩一下,vdi文件就小了

补充:第一种方法Windows系统下会有问题,同样是蓝屏(Windows好麻烦~~),Linux应该没问题

其他人做通的方法,先新建一个希望大小的vdi,通过ghost把原来的vdi硬盘拷到新的vdi硬盘下,再恢复一下引导区
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: