如何压缩 VirtualBox VDI 文件并保留磁盘末尾的可用空间?

如何压缩 VirtualBox VDI 文件并保留磁盘末尾的可用空间?

我在 Ubuntu 22.04 Host 中有一个 Debian 8.5 客户机,不久前我从主机终端扩展了空间,直接使用 VBoxManage modifiedhd --resize 选项停止客户机,启动客户机并使用 gparted 扩展分区大小。

但是当我需要再次减少空间时,我会减少主机中的分区大小,在我的情况下使用 gparted live iso 启动,因为分区是系统类型,在磁盘末尾留下可用空间,但是当我再次尝试 VBoxManage modifiedhd 但这次使用 --compact 选项时,并没有减少它的大小。

最后,为了解决这个问题,我从 gparted 在磁盘上创建了一个新分区,并在安装 zerofree 实用程序(使用:sudo apt install zerofree)后,将其应用于新的空 ext4 分区(使用:zerofree -v /dev/sda3),稍后删除该空分区。之后 compact 命令起作用了,VDI 文件也缩小了。

我不知道是否有更简单的方法,但我还是想分享一下,希望它能帮到别人。谢谢,拥抱!@tximikel

答案1

您可以用来ntfsresize执行此操作。

但首先您必须将 VDI 安装为循环设备,或将其连接到 VM 并在 VM 内运行该程序。以下是如何使用vdfuse或其他软件执行此操作的指南:如何在 Linux 上安装 VirtualBox .vdi 磁盘?

或者,您可以使用任何碎片整理程序并使用“优化可用空间”选项。Windows 有一个内置程序,只需在菜单中查找“碎片整理”即可。

我最喜欢的是 MyDefrag (http://www.mydefrag.net) - 它显示了驱动器的视觉布局。

相关内容