Hyper‑V: nested virtualization не включается — как настроить в Windows 10/11 (2025)

Хотите запустить Hyper‑V, WSL2 или Docker внутри виртуальной машины для тестов и учебы. Включим nested virtualization на хосте и в гостевой системе, разберёмся с ограничениями и частыми ошибками.

Коротко: что нужно

  • Процессор с поддержкой виртуализации и EPT/NPT (Intel VT‑x + EPT или AMD‑V + RVI/NPT).
  • Windows Pro/Enterprise на хосте. На госте — тоже Windows 10/11 или совместимая ОС.
  • Hyper‑V включён на хосте, тип запуска гипервизора — Auto.
  • На виртуальной машине выставлено «ExposeVirtualizationExtensions» и включены совместимые настройки памяти/процессора.
Нужна готовая схема? Настрою nested virtualization под ваши задачи: Hyper‑V внутри Hyper‑V, WSL2, Docker. Оптимизирую производительность и сеть.

Хост: включаем Hyper‑V и проверяем возможности CPU

CMD (Администратор) — выполнять по одной:

dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /all /norestart
bcdedit /set hypervisorlaunchtype Auto
systeminfo | findstr /i "Hyper-V Требования Hypervisor"

PowerShell (Администратор) — выполнять по одной:

Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All
Get-CimInstance -ClassName Win32_Processor | Select-Object Name, VirtualizationFirmwareEnabled

Если в BIOS/UEFI выключены VT‑x/SVM — включите. Заодно проверьте, что включён IOMMU/VT‑d/SMT, а Secure Boot не мешает.

ВМ: включаем nested virtualization

Имена команд подставляйте свои. ВМ должна быть выключена.

PowerShell (Администратор на хосте) — вставить целиком, замените имя ВМ:

$vm = "Dev-VM"
Set-VMProcessor -VMName $vm -ExposeVirtualizationExtensions $true
Set-VMProcessor -VMName $vm -Count 4
Set-VM -VMName $vm -AutomaticStopAction Save
Set-VM -VMName $vm -DynamicMemory -MemoryStartupBytes 4GB -MinimumBytes 2GB -MaximumBytes 8GB
Get-VMProcessor -VMName $vm | Format-List * | Out-Host
"Готово. Запускайте ВМ и ставьте Hyper‑V/WSL2 внутри."

Внутри гостя включите требуемые компоненты и перезагрузитесь.

CMD внутри гостя — выполнять по одной:

dism /online /enable-feature /featurename:Microsoft-Hyper-V /all /norestart
bcdedit /set hypervisorlaunchtype Auto

Производительность и ограничения

  • В nested сценарии часть функций недоступна, а производительность ниже. Выделяйте меньше vCPU, чем на хосте, оставляйте запас.
  • Память лучше фиксированная или узкий диапазон Dynamic Memory.
  • Для Docker/WSL2 в госте проверьте поддержку виртуализации в «Диспетчере задач» гостя.
  • Видеоускорение в nested сценарии ограничено. Для GUI и 3D не ждите чудес.

Частые ошибки и как их починить

«Virtualization support is disabled in the firmware» — включите VT‑x/SVM в BIOS/UEFI и перезагрузите хост.

«The virtual machine could not be started because a required feature is not installed» — проверьте, включён ли Hyper‑V на хосте, а на ВМ — ExposeVirtualizationExtensions.

WSL2 внутри ВМ ругается на гипервизор — проверьте bcdedit /set hypervisorlaunchtype Auto и наличие компонента «Платформа виртуальной машины».

ВМ не стартует после изменения настроек — верните количество vCPU/памяти, проверьте контрольные снимки и совместимость поколения ВМ (Generation 2 предпочтительно).

FAQ

Работает ли nested virtualization на AMD?

Да, при включённом SVM и поддержке NPT. На старых чипах могут быть ограничения.

Можно ли запускать VMware/VirtualBox внутри Hyper‑V?

Частично и с потерями. Лучше использовать Hyper‑V в госте. Смешивать гипервизоры не рекомендуется.

Нужен ли Windows Pro?

Для Hyper‑V на хосте — да. Внутри гостя можно включать требуемые компоненты в совместимых редакциях.

Читайте также: