本文主要是介绍VirtualBox 收缩 vdi镜像文件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
写在前面:
很不幸的是我在使用网上下载的磁盘碎片整理工具整理碎片时将系统整理崩溃了,所以最后我实际上没有按照下面的方法完整执行,建议Windows系统整理磁盘碎片还是用系统自带的工具(我先用自带的整理过一次没有问题,用其他工具整理时工具崩溃系统重启,再也起不来了。)可能慢点但是安全。
方法一试过压缩,不过没有效果,这个方法应该是只对动态分配方式的硬盘有效。我的虚拟机创建时选择的是固定大小硬盘。
方法二试一下。
方法一:原文:http://my.oschina.net/yttco/blog/36110
VirtualBox guest os用久了vdi文件就会越来越大,就算在guest os中删除了一些文件,vdi也不会变小。
如果guest os 是windows:
1、先在guest os上运行磁盘碎片管理器,将各个磁盘的磁盘碎片减少;
2、下载sdelete(http://technet.microsoft.com/en-us/sysinternals/bb897443.aspx);
3、运行sdelete -c -z ;
4、关闭guest os 和 VirtualBox
5、在host os上运行VBoxManage modifyhd --compact yourImage.vdi
如果guest os 是Linux:
1、进入su
2、$ dd if=/dev/zero of=test.file
3、$ rm test.file
4、关闭guest os 和 VirtualBox
5、在host os上 运行 $ VBoxManage modifyhd --compact yourImage.vdi
这样在guest上看到占用的空间就和host上看到的空间就一样了。
作业环境:host os :Scientific Linux 6.1(X64)
guest os:Windows xp ,Scientific Linux 6.1(X64)
方法二:原文地址 http://www.cnblogs.com/BloodAndBone/archive/2010/11/04/1868783.htmlVirtualBox虚拟机功能确实比较强大,不过有个缺点就是它的虚拟硬盘大小的上限在新建的时候就确定下来了,不能再扩大或缩小。我就因此吃过亏,将虚拟硬盘大小设置成6G,结果不够用。怎么办?重新再分配一个新盘,然后重装一次系统?显然,这并不可取,因为需要耗费大量的时间。 没办法网上找,果然找到了一个比较好的解决方案。基本步骤如下:
1. 在VirtualBox的媒质管理器中新建一个硬盘,大小要足够大,我分配的是20G。
2. 从网上下载GParted LiveCD(网址是:http://gparted.sourceforge.net/),我下载的是0.5.2.9,好象最新版的还存在一个严重的问题。
3.将GParted LiveCD的ISO文件引入到VirtualBox中,并在虚拟机中加载,同时还将原虚拟硬盘和新虚拟硬盘同时加载。我是将原盘引入到SATA 0,新盘引入到SATA 1。必须要说明的是,光驱启动要设置成优先。
4. 虚拟机从光盘启动了,一路碰到问题就直接按回车就进入了一个简陋的linux GUI环境中。
5. 打开Terminal终端程序(点击屏幕上方的大图标),在命令行中输入: dd if=/dev/sda of=/dev/sdb 这就相当于是包括MBR的全盘拷贝,时间会比较长,需耐心等待。要特别注意的是/dev/sda对应的是原盘,/dev/sdb对应的是新盘,不要弄错了,否则鸡飞蛋打,哭都来不及。关于这两盘各对应的是什么,可以在GParted程序中看出来,一定要在命令执行前搞清楚,切记。
6. 最好是重启一下虚拟机。
7. 打开GParted程序,可以看到新盘中的分区大小和原盘一模一样,显然这是不对的,需要调整分区的大小。这个调整过程很简单,可以直观地进行GUI操作。我这里的情况是新盘有两个分区,一个主分区5G左右,一个交换分区500M左右。先将交换分区删掉,然后扩大主分区至几乎最大(留500M左右给交换分区),最后,重新分配交换分区。
8. 最后,别忘了在GParted程序中,将新盘设置成可启动的。也就是"Manage Flags"中的一个"Boot"项要选上。 执行完上述步骤之后,关虚拟机,然后重新配置虚拟机,将光盘和原硬盘都移除掉,只用新盘,再重新启动。结果,新盘上的系统确实可以正常工作,而且原盘上的内容都完整无缺地复制过来了。耗时近1小时,迁移成功!
参考贴子: http://hi.baidu.com/jerry_916/blog/item/e0334553d6354e020cf3e38e.html
这篇关于VirtualBox 收缩 vdi镜像文件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!