压缩虚拟机以及扩展虚拟机空间的办法
虚拟机使用久了就会发现虚拟文件越来越大,删除虚拟机中的文件之后物理主机的磁盘空间并不会相应减少,所以实际占用的空间并没有虚拟文件大小那么大,因此我们很有必要进行压缩。不过VirtualBox貌似没有提供图形界面进行压缩的方式,但是我们可以通过命令行实现。
注意:① 此方法只能压缩虚拟文件为vdi格式的Windows系统的虚拟机。
② 由于公司的虚拟机比较大,执行 sdelete -z和vboxmanage modifyvdi filePath compact需要等待相当长的时间,请耐心等待。
③ 执行vboxmanage modifyvdi filePath compact过程中可能会占用大量内存,请提前关闭不必要的程序。
④ 压缩的空间大小取决于你的虚拟机内真实的空间占用大小。
⑤ 有错误之处还望各位批评指正。
第一步. 碎片整理(在虚拟机中操作)
① 进入虚拟机,将sdelete.exe(见附件)拷贝至C盘根目录下;
② 打开命令行窗口,执行cd \切换到C盘根目录;
③ 执行 sdelete -z进行碎片整理,耐心等待完成;
④ 关闭虚拟机。(一定要关闭,否则压缩磁盘的时候会报错)
![](https://images2015.cnblogs.com/blog/789813/201510/789813-20151016095818147-360593051.png)
第二步. 压缩磁盘(在物理主机中操作)
① 打开命令行窗口,切换到VBox的安装目录下执行如下语句:
vboxmanage modifyvdi filePath compact
其中filePath为要压缩的vdi虚拟机文件的路径,如: D:\虚拟机\宜家\ITL.vdi
② 耐心等待运行结束后即完成压缩。
![](https://images2015.cnblogs.com/blog/789813/201510/789813-20151016095833226-846926901.png)
扩展的方法:
======================增加vbox虚拟机硬盘空间================================
利用命令vboxmanage modifyhd来扩展硬盘空间
这个命令是4.0版本支持的。
首先关闭你要扩展硬盘的系统,然后打开终端,进入虚拟硬盘所在目录,运行命令:
1,进入CMD,然后进入vbox的安装目录
cd D:\Program Files\Oracle\VirtualBox
2、运行命令
vboxmanage modifyhd D:\VM_IDE\tuv\TUV_win2008r2_x64(sql2012_x64).vdi --resize 400000
运行命令后会出现 0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100% 当100%后就表示完成了。
命令解释:WindowXP.vdi 我要扩展空间的虚拟硬盘。我安装的是WindowsXP。
--resize 40000 选项指定大小。这里的单位是MB,我设置了40000,大约也就是40G了。原来是10G,现在扩展到了40G。需要注意的是,设置的空间不能小于原系统占用的空间。
======================增加vbox虚拟机硬盘空间================================