首先说下,Virtualbox是一个虚拟机~如果在此帖是第一次看到Virtualbox这几个英文字母的孩子们理论上不用往下看了~~~当然看了也无妨~

好了,言归正传,vdi是Virtual box在建立虚拟空间时的动态磁盘格式,相对于固定磁盘格式来说,它的最大好处在于在建立空间时速度较快,而且初始大小很小。

但是缺点也是有的,相对于固定磁盘格式来说,速度较慢(这个“较”请往小的方向取,有多小取多小),并且当一个空间区域第一次被写入时,以后哪怕这部分空间的数据被移除了,但是增大的空间并不会减少~~纠结的很吧~那就举个例子,我知道这个用语言很难表达~~~比如装完了XP后,大约空间为2G, 这个时候,在我的主系统Windows7下的虚拟机磁盘文件大小也是2G,然而如果我在虚拟机的XP中装了个Office,那个总的空间就会增大到3G左右,好了,卸载Office,此时在虚拟机中看到的占用空间应该回到了2G,但是在Windows7下的那个磁盘空间文件依然会是3G,而不会回到2G。简言之这个磁盘空间文件,即vdi文件,它只会大,不会小~~~

这对于我们来说自然是无法接受的,于是我们投向了伟大的网络,找到了一些方法,但是多为n久以前的文章,并且大多注明,Virtualbox 2.2以后版本可能不适用,OMG, 我们可是3.08啊~

为了跟与时俱进一些,首先要有一个与时俱进的环境:Windows 7 RTM + Virutalbox 3.08

————————————————我是分割线——————————————————

当然了,牛角尖就是让人钻的~于是我们继续尝试,在Virtualbox的安装目录下,有一个文件叫做VBoxManage.exe的程序文件,各位也不用直接运行了,运行了各位我相信也看不清,一个cmd的窗口跳一下就没了~~当然为了少走弯路,我就直说了吧:

我终于开始说了:(大家在建立vdi的时候,尽量用一个单词作为名字)

打开Virtualbox的主程序,不用开虚拟机,这样做只是为了挂载要瘦身的vdi文件~

请先在虚拟机中下载http://technet.microsoft.com/en-us/sysinternals/bb897443.aspx,这是sdelete程序,最好放在C盘根目录下,然后在虚拟机中运行cmd,直接cd\ ,然后使用 sdelete -c c: 命令(注意有个冒号),然后会看到一个进度显示,这是把虚拟机中剩余的空间用0写入,只要等就可以了,也不算太慢~好了之后就可以关掉虚拟机了,留下Virtualbox的主程序~

回到主系统~~~

点击开始,在搜索中键入cmd,在出来的结果上右键击之,以管理员身份运行,用cd命令一级一级跑到X:\program files\Sun\Virtualbox目录,X为安装目录序号,运行“VBoxManage modifyhd xxxxx.vdi compact ”(不含引号)xxxxx为vdi的文件名,这也是为什么一开始说最好名字是一个单词了,否则连不起来……无奈吧~(当然也可以临时改下,重新挂载就好了)

不出意外的话,这时候就会出来一个进度条,当然也是DOS风格的,到达100%的时候,就好了,这时再看vdi文件就小了~我们也就笑了~

P.S 请不要觉得那条命令很高端,其实我也是看着打的,想看吗,其实就在那个运行VBoxManage.exe闪过的框里,呵呵~~要看很容易,不用管理员身份再打开个cmd,然后直接把那个VBoxManage.exe拖放进cmd区域,然后点击Enter回车键~~然后就看到了……

我知道,能看到这里的孩子们是不容易的,谢谢你们了,我知道废话很多……

原文地址:http://bbs.lehu.shu.edu.cn/Article.aspx?aid=129062

如果开始直接用VDI文件名,不成功;提示为:

引用:
rocky@rocky-desktop:~/.VirtualBox/VDI$ VBoxManage modifyhd WinXP.vdi --compact
VirtualBox Command Line Management Interface Version 2.2.2
(C) 2005-2009 Sun Microsystems, Inc.
All rights reserved.

ERROR: Could not find a hard disk with location 'WinXP.vdi' in the media registry ('/home/rocky/.VirtualBox/VirtualBox.xml')
Details: code VBOX_E_OBJECT_NOT_FOUND (0x80bb0001), component VirtualBox, interface IVirtualBox, callee nsISupports
Context: "FindHardDisk(Bstr(FilenameOrUuid), hardDisk.asOutParam())" at line 415 of file VBoxManageDisk.cpp

我的这个VDI从vbox 1.5.2开始,存放目录中间改过多次,不知是否有关系。后改为使用UUID成功。
虚拟机硬盘的UUID可以在~/.VirtualBox/VirtualBox.xml里找到。

代码:
VBoxManage modifyhd  b5cf7595-9709-421e-a2b4-96c8683425c4 --compact
VirtualBox Command Line Management Interface Version 2.2.2
(C) 2005-2009 Sun Microsystems, Inc.
All rights reserved.

0%...10%...20%...30%...40%...50%...60%...70%...80%...

 
原文地址:http://forum.ubuntu.org.cn/viewtopic.php?t=205041
 
以上内容均为转载
 
注:vdi文件的uuid可以从C:\Documents and Settings\用户名\.VirtualBox文件夹下的VirtualBox.xml文件中查看,
<MediaRegistry>
<HardDisks>
  <HardDisk uuid="{865c589e-1de8-4ced-99c7-73b6d978f144}"location="E:\VirtualMachine\XPSP3.vdi" format="VDI" type="Normal" />
  <HardDisk uuid="{067a2a61-5143-4878-b83d-931111dc5fbb}"location="E:\VirtualMachine\XPJP.vdi" format="VDI" type="Normal" />
  </HardDisks>
 
花括号中的即为uuid,根据自己想要压缩的文件选择相应的字符串。

关于Virtualbox的那个奇妙的vdi的瘦身~最新版VBox通过[本博的virtualbox4.08测试通过]相关推荐

  1. VirtualBox压缩VDI文件 VDI文件瘦身方法(cenos7)

    virtualbox虚拟机运行久了之后就会发现,磁盘镜像vdi文件越来越大.即使你把虚拟机中的大文件删除,这个vdi文件占用的空间还是不变.也就是说动态扩展的vdi文件只会大,不会小.那么大的文件对于 ...

  2. VirtualBox压缩VDI文件 VDI文件瘦身方法

    VirtualBox压缩VDI文件 VDI文件瘦身方法 一.WINDOWS 下压缩 VDI 文件 1.在虚拟机中: 右键计算机->管理->磁盘管理 2.右键所有磁盘,压缩卷,把所有磁盘压缩 ...

  3. VirtualBox VM 空间瘦身记(vmdk)

    本文地址:https://www.ebpf.top/post/shrink_vbox_vmdk_size 在使用 VirtualBox( VMDK 模式)管理虚拟机的时候,我们经常会遇到一些编译安装场 ...

  4. VirtualBox中,虚拟系统文件VDI移动或者复制

    在安装virtualbox以后有时需要复制,移动虚拟磁盘等操作,这些操作在vmware的虚拟机下面可以直接操作虚拟磁盘即可使用,但是在virtualbox环境 下每个VDI 文件都有一个唯一的uuid ...

  5. VirtualBox通过恢复备份快照VDI文件恢复至备份状态

    昨天很贱,看到服务器的VB的快照(SnapShot)是放在C盘的,然后C盘的35G空间被这个快照用掉了14G,加上系统的18G,还剩3G的空间.关闭VB,然后移动这个快照文件.结果整个vb都起不来了. ...

  6. Virtualbox 动态虚拟磁盘文件.vdi文件压缩瘦身方法

    使用环境(蓝色粗体字为特别注意内容) 1.软件环境:宿主机Windows 10企业版64bit,虚拟机VirtualBox5.2.16 r123759 (Qt5.6.2) 64bit 最近用到了Vir ...

  7. Win-Virtualbox技术文档

    Win-Virtualbox 技术文档.md tags: 虚拟机 Virtualbox 2019 年 11 月 简介说明 VirtualBox 号称是最强的免费虚拟机软件,它不仅具有丰富的特色,而且性 ...

  8. [转]VirtualBox 复制VDI 并能创建新的虚拟机

    摘自:http://www.nonabyte.net/how-to-copy-a-virtualbox-vdi/ VirtualBox可不像VMware那样,直接复制虚拟磁盘文件就可以了事的,只因为V ...

  9. VirtualBox的虚拟硬盘vdi扩容

    本文完全拷贝自    http://blog.csdn.net/njchenyi/article/details/17611915 进入命令行,以Windows系统为例 运行:cmd C:\Users ...

最新文章

  1. android Android build.gradle 配置注释
  2. oracle 全局临时变量,如何解析Oracle PL / SQL中的简单XML片段并将其加载到全局临时表中?...
  3. 2057. [ZLXOI2015]殉国
  4. final, finally, finalize 的区别
  5. 代码实现:键盘录入任意一个年份,判断该年是闰年还是平年
  6. 测视力距离5米还是3米_7岁男孩近视猛涨300度!眼科专家提醒:保护孩子视力这一点很关键...
  7. JavaWeb【Velocity】
  8. SQL Server 2008 R2 安装图文详解
  9. 为串联机械臂写一个ROS控制器
  10. 正版卡巴斯基KIS7.0半年激活码免费领取
  11. NSString NSCFString isMemberOfClass 遇到的相关的问题
  12. 道创峰会2020:伯克利学生分享会|快来线下碰一碰
  13. CreateProcess创建一个隐藏进程
  14. 杀毒软件的查杀病毒的原理以及木马、病毒的免杀伎俩(论杀或者不杀 )
  15. vue3 给Cesium添加罗盘和标尺
  16. 【性能测试】系统常用监控- -CPU
  17. 浅谈元学习中的支持集和查询集
  18. cocos2d 制作动态光晕效果基础 —— blendFunc
  19. 【解决】接入firebase的谷歌推送,平时的包推送没问题,但发布到Google Play后,下载下来的包推送就不行了。
  20. 如何理解 “解引用”。

热门文章

  1. 自动化测试年薪50万你敢想吗?阿里P7都不淡定了...
  2. C#之CAD二次开发
  3. 关于Echart图没有数据的时候显示暂无数据思路
  4. 今日科技联播:AI助手智商测评Siri进步最大,无人驾驶打车美国试行你可敢坐?...
  5. 图像梯度——Sobel算子和Laplacian算子
  6. Analytic Partners勘讯咨询:促销和定价优化策略的五大关键点
  7. linux 获取文件夹下文件信息,linux下获取文件夹下子文件列表
  8. Flex之旅--Flex小问题汇总(无限更新)
  9. STM32C8T6+RGB彩灯(驱动芯片WS28811、PWM两种调试方法)
  10. mitmproxy:8080端口被占用