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» и включены совместимые настройки памяти/процессора.
Хост: включаем 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 на хосте — да. Внутри гостя можно включать требуемые компоненты в совместимых редакциях.