Vmdk to raw windows

VMDK to RAW with set IDE (CLI) ( Конвертирование посредством утилит командной строки Linux образа VMware в «сырой» формат RAW с обеспечением последующей загрузки с IDE. )

25 апреля 2012 (обновлено 31 января 2015)

OS: MS Windows XP/2003 and Linux Debian Lenny/Squeeze.
Application: command-line utility «vmware-vdiskmanager» (Linux).

Задача: конвертирование образа формата VMDK (VMware Server v.2) виртуальной машины работающей под управлением «MS Windows XP/2003», в формат RAW («сырой», полностью соответствующий формату отображения данных на физическом дисковом носителе), с сопутствующей активацией в виртуализируемой операционной системе поддержки интерфейса подключения устройств «generic-IDE» (позволяющее запустить переносимую виртуальную систему практически в произвольном аппаратном окружении).

По сути, здесь изложен способ конвертирования, представляющей собою частный случай задачи, общее решение которой приведено здесь. На самом деле виртуальная машина формата VMware, как правило (после достаточно тривиального удаления специфичных драйверов от производителя), полностью готова к работе в других системах виртуализации, даже для «парковки» на аппаратное обеспечение. Нюанс в том, что ОС «MS Windows XP/2003» по некоторым причинам, которые я вежливо назвал бы «историческими» (вроде как воспоминание о стыдном, но нестираемом из жизни), с болью и трепетом воспринимает смену типа оборудования, с которого она уже начала было загружать свои исполняемые модули, на иное, реагируя на это «выпаданием в осадок» с демонстрацией «синего окна смерти». Дело не в том, что ядро ОС не опознаёт оборудование или не имеет возможности с такового загрузится; нет, «MS Windows XP/2003» вполне себе успешно начинает загружаться с дискового устройства, но, обнаружив, что загружается не с того аппаратного обеспечения, на котором в последний раз завершила работу, прерывает процесс. Систему не вводит в шоковое состояние смена видеоадаптера, терминального оборудования, даже процессора и материнской платы, но вот дисковый контроллер — это совсем другое дело, согласитесь! Ну да, как-же, большая разница. Маразм конечно, не хлеще OEM-соглашения, на которое подписывается масса «человеков прямоходящих», покупая «MS Windows», вот только проблемы создаёт не потенциально-юридические, а реально-практические, затрудняя замену пришедшего в негодность оборудования или миграцию в иное окружение (даже не нарушая соглашение об использовании). Потому приходится заранее уведомлять операционную систему о вносимом в конфигурацию изменении путём множественной правки «реестра».

И так, пройдёмся по этапам подготовки виртуальной машины к выводу из среды VMware.

Первым делом удалим из виртуализируемой системы все специфичные драйверы VMware (вроде акселератора манипулятора типа «мышь», сетевого и дискового контроллера), деинсталлируя пакет «VMware Tools».

Далее удостоверимся, что в директории «%SystemRoot%\System32\Drivers» находятся драйверы минимального набора поддерживаемого системой «generic-IDE» интерфейсов: «atapi.sys», «intelide.sys», «pciide.sys» и «pciidex.sys». Если чего-то из приведённого списка не хватает — ищем в «%SystemRoot%\Driver Cache\I386\» в архивах вроде «Driver.cab», «sp1.cab», «sp2.cab» и тому подобных.

Читайте также:  Drivers 3g modem windows mobile

Завершающим действом является правка «реестра», способствующая принятию системой оборудования, словно бы в насмешку называемого «Plug-n-Play». Проблема не первой сотни тысяч пользователей и Microsoft на своём сайте детально описала способ её решения: http://support.microsoft.com/kb/314082 . Больше для себя, на память, прикрепляю здесь текстовый файл, содержимое которого нужно «объединить» с «реестром» для достижения поставленной цели:

На этом подготовка VMware виртуальной машины под управлением операционной системы «MS Windows XP/2003» окончена, можно завершать её работу и переходить ко второму этапу — конвертированию образа в RAW-формат.

Прежде всего, нам понадобится утилита «vmware-vdiskmanager» (идет в комплекте с «VMware Server v.2»; утилита не завязана на другое программное обеспечение VMware-сервера и легко переносима — просто копируем).

Уж не знаю, не углублялся, возможно я что-то и нарушаю, выкладывая здесь утилиты конвертирования и монтирования томов VMDK, но так проще:

Далее описываю ситуацию, когда VMDK-образ конвертируется в RAW для дальнейшего применения в среде «Qemu-KVM», исполняемого в «Linux Debian Lenny/Squeeze».

Выделяем под новый образ место, руководствуясь показаниями утилиты «kvm-img»:

Видно, что размер файла VMDK равен пятидесяти восьми гигабайтам, в то время как «внутренний» размер уложенного в него «виртуального» диска составляет сто восемьдесят гигабайт. Нужно готовить место для полноценного RAW-диска объёмом в сто восемьдесят гигабайт.

Для конвертирования VMDK-образов лучше использовать именно утилиту «vmware-vdiskmanager», которая с опцией «-t 2» формирует монолитный файл-диск (preallocated).

Можно сконвертировать с помощью утилиты «kvm-img», но она создаст «разрежённый» файл (к сожалению на данный момент создание монолитных файлов не поддерживается):

Очень важно для дальнейшей производительной работы перегнать получившийся в результате работу утилиты «kvm-img» «no preallocated» файл образа в больший по размеру «preallocated». Конвертер «vmware-vdiskmanager» может сделать это сам, а вот «kvm-img» приходится помогать. Я использую утилиту от VMware.

Просто запускаем конвертацию:

Утилита приступит к делу своей жизни, информируя о состоянии процесса:

Вначале формируется файл «./destination-image-flat.raw», полного размера, индикатор прогресса исполнения как раз достигает значения в 50%; на остальные 50% утилита шуршит диском, делая что-то с полученным файлом, генерируя при этом трафик ввода-вывода сравнимый с работой средне-нагруженной виртуальной машины.

В результате будут «собраны» все файлы виртуальных дисков VMware-машины в один RAW-файл, «слив» все «снепшоты» (если они были) воедино. По завершению получаем поздравление:

Для того чтобы спокойно спать и быть уверенным, что накладки в дальнейшем не связаны с неверной конвертацией, следует проверить полученный образ. Тестируем файл утилитой «file»:

Тестируем утилитой «kvm-img» пакета «Qemu-KVM»:

[ уже посетило: 10570 / +2 ] [ интересно! / нет ]

Поблагодарить автора ( сделайте свой денежный вклад в хорошее настроение )

Мои заметки

Страницы

среда, 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

Читайте также:  Ошибка 0x80070057 при форматировании жесткого диска для установки windows

из 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-образ.

Как конвертировать плоский raw образ диска в vmdk для virtualbox или vmplayer?

У меня есть несколько старых изображений старых файловых систем Linux в плоском формате. они могут быть использованы Бохи, но мне нужно запустить их с Виртуальный Бокс. Virtual Box не может использовать изображения в этом формате ,поэтому мне нужно преобразовать эти изображения из плоского файла.формат файла vmdk. Есть ли способ сделать это?

6 ответов:

apt-get install qemu (устанавливает QEMU на debian / ubuntu)

затем выполните следующую команду: qemu-img convert -O vmdk imagefile.dd vmdkname.vmdk

Я предполагаю, что образ плоского диска-это образ DD-стиля. Операция преобразования также обрабатывает множество других форматов.

Так как вопрос упоминает VirtualBox, это работает в настоящее время:

запустите его без аргументов для нескольких интересных деталей (в частности, —variant флаг):

в Windows, используйте https://github.com/Zapotek/raw2vmdk конвертировать RAW-файлы, созданные с помощью ДД или winhex’а в VMDK. raw2vmdk v0.1.3. 2 имеет ошибку — как только файл vmdk будет создан, отредактируйте файл vmdk и исправьте путь к файлу raw (в моем случае вместо D:\Temp\flash_16gb.raw (созданный winhex) сгенерированный путь был D:Tempflash_16gb.необработанный.) Затем откройте его в виртуальной машине vmware версии 6.5-7 (5.1 отказывался подключать жесткий диск vmdk). как же!

чтобы ответить TJJ:но можно ли это сделать без копирования всего файла? Итак, просто чтобы как-то создать дополнительный vmdk-метафайл, который ссылается на необработанный DD-образ.

да, это возможно. Вот как использовать образ плоского диска в VirtualBox:

сначала вы создаете изображение с dd обычным способом:

затем вы можете создать файл для VirtualBox, который ссылается на этот образ:

вы можно использовать этот образ в VirtualBox как есть, но в зависимости от гостевой ОС он может быть не виден сразу. Например, я экспериментировал с использованием этого метода с гостевой ОС Windows и мне пришлось сделать следующее, чтобы дать ему букву диска:

  • перейдите на панель управления.
  • перейти в раздел «Администрирование».
  • перейти к управлению компьютером.
  • перейдите в раздел хранение\Управление дисками на левой боковой панели.
  • вы увидите свой диск здесь. Создайте на нем раздел и отформатируйте его. Используйте FAT для небольших объемов, FAT32 или NTFS для больших объемов.

возможно, вы захотите получить доступ к своим файлам в Linux. Сначала отключите его от гостевой ОС, чтобы убедиться, и удалите его из виртуальной машины. Теперь нужно создать виртуальное устройство, которое ссылается на раздел.

Читайте также:  Длина командной строки windows

обратите внимание на начальное положение раздела: 63. В приведенной ниже команде я использовал loop4, потому что это было первое доступное петлевое устройство в моем случае.

может быть, вы должны попробовать использовать Starwind V2V Converter, вы можете получить его отсюда -http://www.starwindsoftware.com/converter. Он также поддерживает формат диска IMG и выполняет секторное преобразование между IMG, VMDK или VHD в и из любого из них без внесения каких-либо изменений в исходный образ. Этот инструмент является бесплатным 🙂

ответ кросенвольда вдохновил следующий скрипт, который делает следующее:

  • получить дамп dd через ssh с удаленного сервера (как файл gz)
  • распаковать дамп
  • конвертировать его в vmware

скрипт перезапускается и проверяет наличие промежуточных файлов. Он также использует pv и qemu-img-p, чтобы показать прогресс каждого шага.

в моей среде 2 x Ubuntu 12.04 LTS шаги взял:

  • 3 часа, чтобы получить дамп диска 47 Гбайт раздела 60 Гбайт
  • 20 минут, чтобы распаковать в 60 Гбайт DD файл
  • 45 минут для создания файла vmware

Convert VMDK file to compressed RAW file

I created one virtual machine on my computer with VMWare, now I need to move it on a VPS in Frankfurt.

Using the function provided by VMWare I created a snapshot (VMDK file)

On the hosting website I must upload a RAW format file.

To do the conversion I used qemu-img converter, according to the website I tryed to convert the vmdk to raw using this command:

It works, but I obtained a largest file.

The VMDK image is 3.22GB and the RAW image after the conversion is 56.3GB

I have created the Virtual Machine with 60GB of disk size, so if I understood correctly:

  1. The VMDK file contains only the files that I created on the virtual machine.
  2. The RAW file have this big disk size because it get the size that I had indicated during the VM creation.

If this two observation are right the third question make sense.

Questions:

Is possible to reduce the RAW image size (compress it)?

I have to buy the VPS, but if I can’t compress the RAW image, I have to buy it with 64GB of disk space?

Could be an idea to resize the allocated disk to the Virtual Machine ( eg. 10GB) and export it again as VMDK and after that convert to RAW?

EDIT 01/10/18:

After a lots of tests I figured out that is not possible to shrink the virtual disk size, the best solution is to create another VM with smaller disk and copy all the data on it (using rsync). If for you is important to not lost users, ssh ftp configuration etc.. I don’t know how to do that. I have created again all the configuration.

I have tryed to convert in different format, VDI, HDD, RAW and reduce the virtual disk size is not possible on all the format.

Оцените статью