Перенос ОС MS Windows (на UEFI) в виртуальную среду Hyper-V

Все об администрировании Windows NT/2000/2003/2008/2012 Server (в т.ч. R2) серверов. Групповые политики, домены, безопасность и пр. То, чего не найдешь в бескрайних просторах Интернета. Решения тех проблем, которые не решаются типовыми ответами, которые можно получить в техподдержке Майкрософта - а именно: переустановить продукт или купить какой-ть другой лицензионный диск.


Модератор: UncleFather

Аватара пользователя
UncleFather
Site Admin
Сообщения: 1503
Зарегистрирован: 17 авг 2004 16:20, Вт
Контактная информация:

Перенос ОС MS Windows (на UEFI) в виртуальную среду Hyper-V

Сообщение UncleFather »

Задача:

Имеется физическая машина с операционной системой Microsoft Windows под управлением UEFI. Необходимо перенести (скопировать) ее в виртуальную среду гипервизора Hyper-V.


Решение:

  1. Скачиваем утилиту Disk2vhd с официального сайта Microsoft. С помощью этой утилиты мы создадим виртуальный диск VHD (Virtual Hard Disk - формат виртуальной машины Microsoft) из физического диска, для использования его в среде Microsoft Virtual PC или Microsoft Hyper-V.

    Отличительное свойство этой утилиты - это то, что она «умеет» создавать образы VHD непосредственно на работающей системе, так сказать «в режиме реального времени».

  2. Запускаем утилиту на исходном компьютере и создаем виртуальный диск, отметив галочкой системный том:

    01.jpg
  3. Дожидаемся окончания создания контейнера с образом диска и переносим его на диск гипервизора Hyper-V.

  4. Создаем виртуальную машину второго поколения с параметрами по умолчанию. В качестве виртуального диска указываем только что скопированный файл образа VHDX.

  5. Устанавливаем необходимые настройки - количество процессоров, объем оперативной памяти и пр.

  6. Пытаемся стартовать виртуальную машину. Если все хорошо и ОС успешно загружается, значит наша задача выполнена.

    Но иногда бывает, что операционная система отказывается загружаться и мы увидим ошибку

    No UEFI Compatible file system was found

    В этом случае нужно будет дополнительно выполнить приведенные ниже шаги.

    Причина такого поведения системы в том, что в виртуальном контейнере VHDX отсутствует отформатированный том в системном EFI разделе 100Mb. Сам раздел присутствует, но система не распознает том в этом разделе и помечает его как RAW:

    03.jpg

    Мы знаем, что для удачной загрузки, операционной системе нужен как раз этот EFI раздел, на котором должен находиться отформатированный в FAT32 том, где в папке EFI/Microsoft/boot должны присутствовать необходимые для загрузки файлы. На исходной системе так и было:

    02.jpg

    Но, вследствие каких-то преобразований при упаковке в контейнер VHDX, этот том был утерян или поврежден, поэтому нам нужно просто его восстановить, и вновь поместить нужные для загрузки операционной системы файлы по фиксированному пути. Итак, продолжаем:

  7. Подключаем к виртуальной машине загрузочный iso образ диска с ОС, поддерживающей загрузку с UEFI и запускаем виртуальную машину.

  8. Начинаем установку операционной системы, в первом окне выбираем язык, а во втором - «Восстановление системы».

  9. Заходим в режим командной строки и запускаем утилиту разметки диска:

    Код: Выделить всё

    diskpart
  10. Смотрим какие физические диски в системе установлены и выбираем нужный:

    Код: Выделить всё

    list disk
    select disk 0
  11. Выводим список томов и выбираем том с нераспознанной файловой системой RAW:

    Код: Выделить всё

    list volume
    select volume 2
  12. Присваиваем тому букву, например, L и форматируем его в файловой системе FAT32:

    Код: Выделить всё

    assign letter=L
    format fs=FAT32 label=«BOOT»
  13. После окончания форматирования, выходим из утилиты diskpart и создаем нужную папку на диске L:

    Код: Выделить всё

    exit
    md l:\efi\microsoft\boot
  14. Заходим в эту папку и пересоздаем загрузочный сектор на загрузочном разделе:

    Код: Выделить всё

    cd l:\efi\microsoft\boot
    bootrec /fixboot
  15. Заново создаем хранилище BCD, скопировав файлы среды загрузки из системного каталога:

    Код: Выделить всё

    bcdboot C:\Windows /l ru-ru /s L: /f ALL

    Здесь:

    • C:\Windows - путь к каталогу с установленной ОС Windows;

    • /l ru-ru - языковой стандарт, который используется при инициализации хранилища BCD;

    • /s L: - буква тома, назначенная целевому системному разделу, в который копируются файлы среды загрузки;

    • /f ALL - указывает, что копировать нужно все файлы среды загрузки, включая файлы для компьютеров с UEFI или BIOS (теоретическая возможность загружаться на EFI и BIOS системах).

  16. Выходим из режима восстановления

  17. Выключаем виртуальную машину, заходим в ее параметры и удаляем из ее устройств за ненадобностью загрузочный iso образ диска

  18. На этом настройка закончена. Теперь виртуальная машина сможет без проблем загрузиться с перенесенным дисковым контейнером vhdx.

Видеоинструкцию смотрим здесь:


Alexander A. Manaeff©

Понравилась статья? Будем крайне признательны за репосты в соцсетях! Материально поддержать проект можно здесь

Мои странички:
ВКонтакте
Одноклассники
Youtube
Facebook
Instagram

Изображение
Изображение
Изображение
Изображение