我在 Windows 7 64 位主机上安装了一台 Xubuntu 12.10 64 位 Virtualbox VM。它有一个动态分配的硬盘,采用 VDI 格式,最大容量为 20GB。
如果我在虚拟机中使用命令,df -h
我会发现主分区中已使用了 5.3GB。我只有 2 个分区,一个用于 ext4 硬盘,另一个用于 512MB 交换。我没有快照。
此虚拟机的 VDI 文件有 10.7GB。空间差异正常吗?是因为 VDI 格式导致的吗?
答案1
您以前可能在虚拟机上使用过 10.7GB。使用更多磁盘时,动态 VDI 文件会增大,但使用较少磁盘时,它不会缩小。它将增大到您为虚拟机定义的大小 (20GB)。除了创建一个新文件并将所有内容复制到其中之外,我不知道还有什么方法(不是说没有)可以缩小它...
答案2
你可以缩小 VDI 映像
大致步骤如下:
- 启动到安全模式(恢复模式),您可以在其中访问根分区(/dev/sda1)。
- 将根分区挂载为只读(mount -o ro /dev/sda1 /mnt/tmp)
- 使用 dd 或 zerofree 将未使用的空间清零
- 关闭虚拟机并运行“VBoxManage modifiedhd –compact /path/to/virtualboximage.vdi”