将动态 VDI 缩小到实际大小

将动态 VDI 缩小到实际大小

我的动态 VDI 占用了 Windows 7 主机的 NTFS 分区上的 56.2 GB 空间。我在机器上运行 Ubuntu 服务器,它只占用 4.1 GB

命令:df -h 显示

Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             2.0T  4.1G  1.9T   1% /
none                  4.0K     0  4.0K   0% /sys/fs/cgroup
udev                  235M  4.0K  235M   1% /dev
tmpfs                  50M  512K   49M   2% /run
none                  5.0M     0  5.0M   0% /run/lock
none                  246M  4.0K  246M   1% /run/shm
none                  100M     0  100M   0% /run/user
/dev/sdb1             2.0T   11G  1.9T   1% /var/dev
/home/starx/.Private  2.0T  4.1G  1.9T   1% /home/starx

如何将这个 56.2 GB 缩小到 4.1 GB 即实际大小?

答案1

诀窍是用零填充未使用的空间,然后让 VB 缩小磁盘。

例如:在 Linux 中以 root 身份运行: dd if=/dev/zero bs=1024k of=/bigfile; rm -f /bigfile

然后关闭机器并运行: VBoxManage modifyhd diskfile.vdi --compact

由于磁盘大部分都被零填充,它应该会缩小到接近 4GB。

相关内容