Вопрос или проблема
У меня есть две виртуальные машины в Hyper-V на Windows 11 Pro.
Обе виртуальные машины второго поколения с отключенной безопасной загрузкой.
Одну из них, debian-test01, я установил с DVD ISO Debian.
Другую, import-test01, это файл VHDX, который я пытаюсь импортировать. Он также содержит образ Debian.
Виртуальная машина debian-test01 настроена на загрузку с файла (EFI shim).
Виртуальная машина import-test01 настроена на загрузку с файла VHDX.
PS C:\Windows\system32> Get-VMFirmware -VMName debian-test01
VMName SecureBoot SecureBootTemplate PreferredNetworkBootProtocol BootOrder
------ ---------- ------------------ ---------------------------- ---------
debian-test01 Off OpenSourceShieldedVM IPv4 {File, Drive, Network, Drive}
PS C:\Windows\system32> Get-VMFirmware -VMName import-test01
VMName SecureBoot SecureBootTemplate PreferredNetworkBootProtocol BootOrder
------ ---------- ------------------ ---------------------------- ---------
import-test01 Off OpenSourceShieldedVM IPv4 {Drive, Network}
PS C:\Windows\system32>
Я смотрел в встроенной и онлайн помощи по Set-VMFirmware
и не нашел ничего о добавлении файла в порядок загрузки.
Что это за черная магия?
Ответ или решение
Как настроить виртуальную машину Hyper-V Gen2 для загрузки из файла
Виртуализация с использованием Hyper-V предоставляет множество возможностей, включая различные способы загрузки виртуальных машин (VM). В данном руководстве мы рассмотрим, как настроить виртуальную машину второго поколения (Gen2) в Hyper-V для загрузки из файла, используя информацию из вашего описания.
Шаг 1: Подготовка к настройке
Прежде чем приступать к настройкам, убедитесь, что обе ваши виртуальные машины находятся в одинаковых условиях:
- Оба виртуальные машины Gen2 с отключенной безопасной загрузкой (Secure Boot).
- Вам необходимо иметь доступ к PowerShell для выполнения команд безопасности.
Шаг 2: Подключение к PowerShell
Откройте PowerShell от имени администратора и выполните следующие команды, чтобы убедиться, что ваша среда готова к использованию и что нужные виртуальные машины действительно настроены должным образом.
Get-VMFirmware -VMName debian-test01
Get-VMFirmware -VMName import-test01
Как вы уже обнаружили, виртуальная машина import-test01
не имеет опции "File" в порядке загрузки. Это происходит потому, что при создании виртуальной машины на базе VHDX по умолчанию устанавливается другой порядок загрузки.
Шаг 3: Изменение порядка загрузки
Чтобы добавить возможность загрузки из файла для виртуальной машины import-test01
, вам необходимо использовать команду Set-VMFirmware
.
Пример команды для добавления загрузки из файла может выглядеть следующим образом:
Set-VMFirmware -VMName import-test01 -BootOrder (Get-VMFirmware -VMName import-test01).BootOrder + (New-Object Microsoft.HyperV.PowerShell.BootDevice -ArgumentList "File")
Однако, так как Hyper-V не поддерживает прямую команду для добавления загрузки из файла в BootOrder, мы воспользуемся следующей стратегией.
Шаг 4: Настройка загрузки из файла
- Убедитесь, что у вас есть EFI shim (обычно это файл, который используется для загрузки).
- Перейдите в настройки вашей виртуальной машины через Hyper-V Manager.
- Выберите
Path
для указания файла, из которого будет происходить загрузка. - После этого выполните команду для установки нового порядка загрузки:
$firmware = Get-VMFirmware -VMName import-test01
$firmware.BootOrder.Clear() # Очищаем текущий порядок загрузки
$firmware.BootOrder.Add((New-Object Microsoft.HyperV.PowerShell.BootDevice -ArgumentList "File")) # Добавляем загрузку из файла
$firmware.BootOrder.Add((New-Object Microsoft.HyperV.PowerShell.BootDevice -ArgumentList "Drive")) # Добавляем загрузку из диска
Шаг 5: Проверка изменений
После внесения изменений вы можете снова выполнить команду:
Get-VMFirmware -VMName import-test01
Убедитесь, что порядок загрузки был успешно обновлен и теперь включает File
.
Заключение
Настройка виртуальной машины Hyper-V Gen2 для загрузки из файла может быть несколько запутанной, но, следуя вышеуказанным шагам, вы сможете успешно изменить параметры загрузки. Если у вас возникнут дополнительные вопросы или проблемы, не стесняйтесь обращаться к документации Microsoft или к сообществам поддержки.
Эта процедура обеспечивает гибкость и возможность выбора способа загрузки, что особенно важно для тестирования различных операционных систем и конфигураций.