我一直在动态创建一些虚拟机:设置一个虚拟机,创建一个快照,做了一些更改,克隆了它,用克隆重复了该过程,然后用克隆的克隆重复了该过程等等。
清理一些不需要的虚拟机后,我的虚拟媒体管理器中现在有一些磁盘映像,它们不再附加到任何东西,但仍然有子映像,所以我无法删除它们。
这棵树大致如下:
original.vdi
,附加到原始 VM{08932168-600d-beef-cafe-950824113607.vdi}
,附加到原始 VM{15552878-d00d-fa1a-fe15-badd0990f00d.vdi}
,未附加(以前是已删除的虚拟机的快照){d09905e2-f00d-aca7-1e55-babefee15bad.vdi}
,连接到仍在使用的虚拟机
现在,显然15552878
可能有一些数据仍然需要d09905e2
但不在该图像中,并且任何父图像08932168
也original
没有该数据的最新版本,所以我们不能简单地删除该图像。
另一方面,一些数据15552878
可能会被覆盖d09905e2
并因此而过时,所以理论上我们应该能够压缩15552878
,删除这些扇区,或者将15552878
仍在使用的数据合并到中d09905e2
。
有什么方法可以在 VirtualBox 中实现吗?我已在未附加的图像及其子图像上尝试过vboxmanage modifyhd ... compact
以及vboxmanage modifymedium --compact
,但均无济于事 - 大小没有改变。