Не удается запустить VirtualBox, так как “Обнаружен гипервизор”.

Вопрос или проблема

Я на только что установленном Windows 11 Pro 24H2, и я хочу запустить виртуальную машину с помощью VirtualBox. Когда я запускаю виртуальную машину, в правом нижнем углу отображается значок черепашки, и виртуальная машина работает очень медленно.

В логах говорится в какой-то момент:

HM: HMR3Init: Попытка возврата к NEM: AMD-V недоступен

Но функции виртуализации моего процессора включены в BIOS.

Далее в логах:

NEM: NEMR3Init: Активен режим медленного выполнения!
NEM: Внимание! VirtualBox не может работать на полную мощность в этом режиме выполнения.
NEM: Чтобы увидеть, как VirtualBox работает на максимальной скорости, вам нужно отключить все функции Windows,
NEM: использующие Hyper-V. Это изменяющаяся цель, так что загуглите, как это сделать, и осторожно
NEM: подумайте о последствиях отключения этих функций.

В тот момент я подумал, что Hyper-V активен и блокирует VirtualBox от использования функций виртуализации моего процессора.

Сначала я запустил msinfo32, чтобы проверить, включены ли Hyper-V, WSL2, Контейнеры или безопасность на основе виртуализации. Но он сказал только “Гипервизор обнаружен. Функции, необходимые для Hyper-V, не будут показаны.”

Тем не менее, я прошел через обычные шаги, чтобы отключить все функции на основе виртуализации (о которых я знаю):

  • Целостность памяти: отключено
  • Hyper-V: Ни одна из следующих функций не установлена
    • Hyper-V
    • Платформа виртуальных машин
    • Платформа Windows Hypervisor
    • Песочница Windows

Я даже удалил их с помощью powershell (хотя никогда сам их не устанавливал):

Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All
Disable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
Disable-WindowsOptionalFeature -Online -FeatureName Windows-Hypervisor-Platform
Disable-WindowsOptionalFeature -Online -FeatureName Containers-DisposableClientVM

Затем я установил все параметры загрузки, чтобы не включать никакие функции виртуализации:

bcdedit /set hypervisorlaunchtype off
bcdedit /set nx OptIn
bcdedit /debug off
bcdedit /set isolatedcontext No
bcdedit /set vsmlaunchtype Off

Я где-то читал, что “Credential Guard” также может выполнять некоторые функции виртуализации, в какой-то статье говорилось, что его можно отключить, изменив ключ реестра
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa, добавив значение под названием LsaCfgFlags (DWORD 32bit) со значением 0. Проверив это, я обнаружил, что это значение уже установлено таким образом.

Затем я установил VirtualBox, чтобы убедиться, что на машине нет ни одного гипервизора.

Выключил компьютер (даже отключил и ждал 10 секунд). После перезагрузки все равно “Гипервизор обнаружен”

Некоторые поиски в Google привели ко множеству команд для проверки состояния гипервизора: команда sc query hvservice вернула:

SERVICE_NAME: hvservice
        TYPE               : 1  KERNEL_DRIVER
        STATE              : 4  RUNNING
                                (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

На данный момент у меня нет представления о том, что это за гипервизор, и у меня заканчиваются идеи. Заметьте, что я не (сознательно) устанавливал никакой другой гипервизор (такой как VMWare), обычно VirtualBox мой основной выбор.

Правка

Вот несколько скриншотов (язык системы – немецкий, переводы предоставлены)
msinfo32
Говорит, что безопасность на основе виртуализации работает.

Групповая политика для отключения безопасности на основе виртуализации
Политика “Virtualisierungsbasierte Sicherheit aktivieren” = “Включить безопасность на основе виртуализации” установлена на “Deaktiviert” = “Отключено”.

Функции Windows
Нет галочек на “Hyper-V” (или каких-либо подэлементах), “Платформа виртуальных машин”, “Платформа Windows Hypervisor”, “Подсистема Windows для Linux” или “Песочница Windows”.

Ядро изоляции в настройках безопасности Windows
Отключено, красный текст “Die Einstellung wird vom Administrator verwaltet” означает “Эта настройка управляется администратором”, скорее всего, это потому, что это отключено через групповую политику.

Правка 2

Мне удалось найти настройку для включения/выключения AMD-V в моем BIOS (MSI почему-то скрывает это под разгоном). Когда я отключаю это и загружаюсь в Windows, безопасность на основе виртуализации отключена (из-за отсутствия аппаратной поддержки). К сожалению, после того как я снова включаю это (потому что я хотел бы запустить виртуальную машину), безопасность на основе виртуализации автоматически снова активируется.

Ответ или решение

Решение проблемы: "Не удается запустить VirtualBox, так как обнаружен гипервизор"

Когда вы сталкиваетесь с ошибкой "Не удается запустить VirtualBox, так как обнаружен гипервизор" на Windows 11 Pro 24H2, это может быть результатом конфликта с активированными функциями виртуализации. Давайте разберемся с этой ситуацией шаг за шагом.

1. Проверка состояния гипервизора

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

sc query hvservice

Если состояние службы "hvservice" отображает "RUNNING", это означает, что гипервизор работает, и он может блокировать работу VirtualBox.

2. Отключение функций Windows, задействующих гипервизор

Из вашего описания видно, что вы уже отключили следующие функции:

  • Hyper-V
  • Платформа виртуальных машин
  • Платформа Windows Hypervisor
  • Контейнеры

Однако, убедитесь, что они действительно отключены. Используйте команду PowerShell для их отключения:

Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All
Disable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
Disable-WindowsOptionalFeature -Online -FeatureName Windows-Hypervisor-Platform
Disable-WindowsOptionalFeature -Online -FeatureName Containers-DisposableClientVM

Также перепроверьте параметры в системных настройках и убедитесь, что все компоненты гипервизора удалены.

3. Настройка загрузчика Windows

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

bcdedit /set hypervisorlaunchtype off
bcdedit /set nx OptIn
bcdedit /debug off
bcdedit /set isolatedcontext No
bcdedit /set vsmlaunchtype Off

После выполнения этих команд обязательно перезагрузите компьютер.

4. Отключение защитных функций

Вы также упомянули, что проверяли "Credential Guard" и "Virtualization-Based Security". Убедитесь, что все параметры, относящиеся к безопасности виртуализации, отключены.

  1. Реестр: Перейдите по пути HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa и проверьте значение LsaCfgFlags. Должно быть установлено на 0.

  2. Групповая политика: Рекомендуется также проверить параметры групповой политики, чтобы убедиться, что никаких политик, активирующих Virtualization-Based Security (VBS), не установлено.

5. Проверка BIOS

Вы отметили, что в BIOS активирована виртуализация (AMD-V). Это необходимо для работы VirtualBox. Однако, если вы отключаете её, и VBS отключается, при повторном включении она автоматически активируется, возможно, из-за настроек безопасности в BIOS. Убедитесь, что:

  • AMD-V действительно включен в BIOS.
  • Проверьте, нет ли других встроенных функций безопасности, которые могут конфликтовать с VirtualBox.

6. Альтернативы для тестирования

Если все вышеперечисленные шаги не помогли, вы можете рассмотреть:

  • Установку другого гипервизора (например, VMware Workstation Player), чтобы проверить, возникает ли аналогичная проблема.
  • Создание нового пользователя с правами администратора и повторная установка VirtualBox в его окружении.
  • Использование старой версии VirtualBox, которая может оказаться более совместимой с вашим оборудованием и конфигурацией.

Заключение

Ошибка "A hypervisor has been detected" может быть устранена путем тщательной проверки состояния гипервизора, отключения всех связанных функций в Windows и BIOS, а также проверки настроек безопасности. Следуя вышеописанным шагам, вы сможете вернуть VirtualBox в рабочее состояние и наслаждаться виртуализацией.

Если проблема все еще сохраняется, рекомендуем обратиться в службу поддержки VirtualBox для получения дополнительной помощи.

Оцените материал
Добавить комментарий

Капча загружается...