最小化 VirtualBox 硬盘

最小化 VirtualBox 硬盘

我在 VirtualBox 中的虚拟机上安装了 Ubuntu Server 10.04 TLS。硬盘的大小是动态增长的硬盘,最大为 32GB。一开始我的硬盘上有 4GB,.vdi 的大小也是 4GB。最近磁盘上的数据大小为 15GB,但 .vdi 的大小几乎是 32GB。

这是为什么?

我如何打包/优化/碎片整理硬盘以使其与磁盘上的数据大小相同?

谢谢。

答案1

原因是动态磁盘存储了所有数据,甚至是临时的、现在已解除链接的数据。VBoxManage 可执行文件有一个命令,modifyvhd,可以执行硬盘映像的压缩:

VBoxManage modifyhd Ubuntu.vhd --compact

这应该会使文件大小回到接近 15GB 的大小,甚至可能略微提高性能(读取/搜索的数据更少)。如果您真的想优化磁盘,可以先将零写入可用空间,然后压缩。这将强制文件系统释放可能仍被占用的任何块。

cat /dev/zero > zero ; sync ; rm zero

其他参考:http://www.virtualbox.org/manual/ch08.html- 参见modifyvhd部分,特别是--compact选项。

答案2

您可以使用 Clonezilla 将磁盘克隆到新的 VDI。我最近成功地将它用于 Linux 和 Windows 卷。我不能肯定地说它会收回空间,但尝试一下也没什么用。

  • 使用 VBox 创建新卷
  • 将卷附加到虚拟机
  • 启动到 Clonezilla Live CD
  • 将当前磁盘克隆到新磁盘
  • 验证结果后,将原始磁盘和新磁盘移至同一连接点
  • 启动虚拟机并测试

相关内容