среда, 5 февраля 2014 г.

Конвертирование образов виртуальных машин vmdk, vdi, img, raw, vhd, qcow


Конвертировать образы между virtualbox и qemu/kvm

Все преобразования происходят через формат raw:
1. С virtualbox на qemu
из vdi в raw:
$ VBoxManage internalcommands converttoraw image.vdi image.raw

из raw в qcow:

$ qemu-img convert -f raw image.raw -O qcow2 image.qcow

    -f  –  определяет формат образа виртуальной машины для преобразования
    -O  –  определяет формат образа виртуальной машины в который будет преобразован текущий образ

2. С qemu на virtualbox

из img на raw:
$ qemu-img convert -O raw image.img image.raw

из raw на vdi:
$ VBoxManage convertdd image.raw image.vdi
или
$ VBoxManage convertfromraw -format VDI image.raw image.vdi

Оптимизация образа VirtualBox
$ VBoxManage modifyvdi /full/path/to/image.vdi compact



Vdi, vmdk в формат raw kvm/qemu
$ qemu-img convert -f vdi vbox-disk.vdi -O raw kvm-disk.img

Объединение нескольких в один файл


$ qemu-img convert -O raw image01.vmdk image02.vmdk image03.vmdk image04.vmdk image05.vmdk image06.vmdk image.img


Из VirtualBox в VMWare через менеджер виртуальных носителей.
Запустите VirtualBox, далее в меню
Файл -> Менеджер виртуальных носителей -> Выбираем тот образ, которую надо конвертировать
vdi в vdi
vdi в vmdk
vdi в vhd
vdi в hdd
и копировать.

Еще один способ:
Используя утилиту qemu-img из пакета эмулятора qemu. Данная команда конвертирует образ виртуальной машины, созданной в VirtualBox, в VmWare-образ.

$ qemu-img convert -f  vdi -O vmdk VirtualBoxImage.vdi VmWareImage.wmdk
-f – определяет формат образа виртуальной машины для преобразования
-O – определяет формат образа виртуальной машины в который будет преобразован текущий образ
Список поддерживаемых форматов можно посмотреть так:
$ qemu-img -O

Общий формат команды:
$ qemu-img convert [-c] [-f fmt] [-O output_fmt] [-o options] filename [filename2 [...]] output_filename

Для преобразования виртуальной машины из одного формата в другой также можно воспользоваться встроенными средствами Virtual Box VBoxManage clonehd:
Преобразовать vmdk в vdi:
$ VBoxManage clonehd VmWare_Image.vmdk VirtualBox_Image.vdi –format VDI

и наоборот, виртуальную машину формата vdi в vdmk:
$ VBoxManage clonehd VirtualBox_Image.vdi VmWare_Image.vmdk –format VMDK

Общий формат команды:

$ VBoxManage clonehd <uuid>|<filename> <uuid>|<outputfile> [--format VDI|VMDK|VHD|RAW|<other>] [--variant Standard,Fixed,Split2G,Stream,ESX] [--existing]