现在的位置: 首页 > 综合 > 正文

VirtualBox 中压缩虚拟机文件的方案

2014年10月25日 ⁄ 综合 ⁄ 共 1036字 ⁄ 字号 评论关闭

目前VirtualBox下的虚拟机是会一直申请空间,直到达到我们设置的动态空间的最大值才开始自动释放空间。因此产生了压缩虚拟机文件释放空间问题。

首先,如果虚拟机文件是vmdk或是其他非vdi格式,需要先转换为vdi格式,命令如下:

VBoxManage clonehd "ubuntu 10.04.vmdk" "ubuntu 10.04.vdi"--format VDI

其中命令VBoxManage在C:\Program Files\VirtualBox\VBoxManage.exe中,source和target是自己需要转换的原文件和目标文件

执行比较慢,

然后是压缩

目的:将系统中无用的垃圾空间置零 然后释放掉

清除“零”字节空间,使用 VBoxManage modifyhd 工具压缩 VDI 磁盘镜像文件

下文完善自http://u.hooto.com/rui/blog/view/5144.html

Windows 虚拟机

1. 虚拟机: 删除系统垃圾文件,运行磁盘整理程序...

2. 虚拟机: 用 SDelete 工具写"零",下载地址 http://technet.microsoft.com/en-us/sysinternals/bb897443.aspx,在命令行下执行 "sdelete -c"... 关机...

3. 物理主机: 执行 "VBoxManage modifyhd /the-path-of-VDI.vdi --compact"

Linux 虚拟机

1. 虚拟机: 清理、卸载系统垃圾文件

2. 虚拟机: 写“零”,"dd if=/dev/zero of=/fillerup.zero" 方法并不是很有效,VBox官方网站找到一个几年前的“终极办法” (英文链接)!

  2.1 用一张 LiveCD iso (ubuntu) 启动虚拟机,使用 System - Administration - GParted 分区软件,将虚拟硬盘空间设置到最小,应用

  2.2 在刚才腾出来的空间上建立新分区,执行 "sudo dd if=/dev/zero of=/dev/sda3" (将新添加的设备sd3用0填充,垃圾文件块被清零), 然后删除此分区

  2.3 回到主分区,恢复它的所有空间,应用    关机 (未用部分现在都是0)

3. 外部主机: 执行 "VBoxManage modifyhd /the-path-of-VDI.vdi --compact"  (将所有申请了但是0的部分回收,即压缩)

OK!

抱歉!评论已关闭.