уменьшить размер файла ova в virtualbox

уменьшить размер файла ova в virtualbox

У меня есть Ubuntu 64bit VM, которую я получил из файла ova размером ~1 ГБ, я использовал его под VMware vSphere, чтобы установить на нем еще немного программного обеспечения и использовать систему для нескольких наборов данных, которые занимали около 2-3 ГБ места, но теперь, когда я удалил эти большие файлы, я ожидал, что вновь созданный файл ova из него также займет около ~1,1 ГБ места, но вместо этого он занимает около 3 ГБ. Если я посмотрю на детали файла .vmdk в virtualbox, я увижу следующее:

Hart Disk: SATA Port 0
Type (Format): Normal (VMDK)
Virtual Size: 8.00 GB
Actual Size:  7.90 GB
Details: Dynamically allocated storage
Location: /somewhere/myVM-disk1.vmdk
Attached To: myVM.virtualbox

Размер ova при экспорте этой машины составляет ~3 ГБ.

Есть идеи, как его уменьшить?

решение1

Место в .vmdk выделяется, когда ОС делает первую запись в определенный сектор. После записи оно выделяется навсегда.

Итак, вам нужно добавить второй динамический виртуальный HDD к вашей виртуальной машине, затем загрузить VM с LiveCD, создать разделы с помощью fdisk и скопировать все файлы (cp -R). Затем выключите VM, поменяйте местами виртуальные HDD, загрузитесь снова и проверьте, все ли работает, затем отсоедините оригинальный виртуальный HDD от VM и удалите его как файл на диске хост-системы.

Прямое копирование с помощью dd в виртуальной машине не сработает, поскольку оно запишет каждый сектор в целевой файл .vmdk, поэтому он расширится до полного размера, а не сожмется.

решение2

Смотреть статьюКак сжать динамически расширяемый гостевой образ virtualbox.

Описывается, как сжать диск с помощью:

  1. Обнулите свободное пространство, используяzerofreeдля Убунту
  2. Уменьшите размер виртуальной машины, используя
    VBoxManage modifyhd my.vdi –compact

Связанный контент