VT-x недоступен, но включен в BIOS


114

Недавно у меня возникла проблема с VT-x на моем Windows 10, работающем на HP EliteBook. Я использовал Oracle VirtualBox для запуска некоторых виртуальных машин на нем, а VT-x был включен в BIOS и работал нормально.

Я начал получать VT-x is not availableошибки каждый раз, когда пытался запустить любую из своих виртуальных машин. Это начало происходить после того, как я установил Docker на свою машину, поэтому я попытался удалить его и перезагрузить. Не помогло

Я проверил настройки BIOS и он говорит, что VT-x включен, но проверка с помощью утилиты идентификации процессора Intel (R) показывает, что VT-x не поддерживается и Oracle VirtualBox также не видит его.

Изменений в оборудовании не было, и единственным изменением программного обеспечения была установка / удаление Docker.

Как можно решить эту проблему?

Ответы:


151

Существует три распространенных причины типа ошибки, которую видит пользователь:

  • VT-x не включен в BIOS
  • Процессор не поддерживает VT-x
  • Виртуализация Hyper-V включена в Windows

Поскольку пользователь уже удалил первые два возможных виновника, следующий шаг - открыть командную строку от имени администратора и выполнить следующую команду:

dism.exe /Online /Disable-Feature:Microsoft-Hyper-V

После этого перезагрузите компьютер и попробуйте снова VirtualBox.


40
Для дальнейшего уточнения: Docker работает поверх Windows Hyper-V. Установка Docker включила его, но деинсталляция не выключила Hyper-V.
Тонни

@cat: это общий ресурс, чтобы правильно отключить его, когда последний компонент, в зависимости от него, удален, вам понадобится какой-то счетчик ссылок.
Бен Фойгт

2
Для полноты: это также может произойти с некоторыми вирусами, которые используют VT-x, чтобы скрыться от операционной системы. Это редко, хотя.
Саймон Рихтер

4
Следует отметить, что Hyper-V технически поддерживает вложенную виртуализацию после обновления 1607 года. Если вам требуется одновременно и Hyper-V, и VBox, попробуйте включить его .
Боб

3
Кроме того, функция окон [Virtual Machine Platform] также должна быть отключена.
Линтаба

17

После обновления Windows 10 до «Fall Creators Update» у меня возникла та же проблема. Я решил это с помощью следующих шагов:

  1. Включите все функции в разделе «Hyper-V» в разделе «Включение или отключение функций Windows».
  2. Запустить снова.
  3. Отключите все функции в разделе «Hyper-V» в разделе «Включение или отключение функций Windows».
  4. Запустить снова.
  5. Теперь VirtualBox снова работает и показывает (64-битную) в своем списке операционных систем.

5
Для нетерпеливых: отключение Hyper-V заняло Windows несколько минут.
Jens Piegsa

4
к сожалению, у меня не получилось ...
Махди Рашиди

Если после обновления win10 возникла та же проблема, виновником стало обновление Hyper-V. поэтому я сделал несколько проб и ошибок, наконец, это сработало: включите intel virtu .. и vt-d из BIOS, затем отключите платформу Windows Hypervisor и Virtual Machine из панели управления>
включите

6

Когда у меня возникла эта проблема, VMWare Player дал лучший диагностический ответ, чем VirtualBox, когда я пытался создать 64-разрядную виртуальную машину.

В нем говорилось, что на моей машине были включены корпоративные функции Device Guard и Credential Guard . Я полагаю, они стали доступны, когда я запустил MalwareBytes; Я не могу думать ни о каких других изменениях, которые я сделал.

VMWare Player указал мне на страницу под названием « Управление учетными данными защитника Windows» . На этой странице есть куча информации о настройках диспетчера групповой политики и т. П., Которые, конечно, не имеют отношения к установке W10 HOME.

В свою очередь, эта страница указала мне на инструмент готовности аппаратного обеспечения Device Guard и Credential Guard, инструмент PowerShell для включения и отключения этого набора функций на серверах.

Запуск этого инструмента в командной оболочке Run-As-Administrator и предоставление этой команды

 .\DG_Readiness_Tool_v3.5.ps1 -Disable -AutoReboot

взял меня через процесс отключения этих функций.

И у меня есть возможность виртуализации назад.


6

Если вы используете последнюю сборку Windows 10, отключите интеграцию памяти в Device Security и перезагрузите компьютер.

Когда я включил эту опцию, я столкнулся с подобной проблемой виртуальной коробки. Отключение у меня сработало.

Core Isolation - целостность памяти Скриншот


2

Виртуалбокс работал нормально. Я обновил антивирус Avast сегодня, 29 июня 2017 года. Затем Virtualbox выдал ошибку VT-x. В настройках Avast перейдите в раздел «Устранение неполадок» и включите «Использовать вложенную виртуализацию, где доступно», а затем перезагрузите компьютер. Это работало для меня без каких-либо других изменений.


Получая синие экраны здесь с сегодняшнего дня (vmm.sys), я использую avast бесплатно, но я не вижу этой опции.
Дан

У меня была такая же проблема с Защитником Windows. Я активировал Device Security - Core Isolation. Отключение, которое решило мою проблему.
Цухаресу

2

Я был сбит с толку тем фактом, что в диалоговом окне «Функции Windows» было 2 варианта выключения:

  • Hyper-V,
  • Платформа гипервизора Windows

Я предпринял попытку обновления до VirtualBox 6 и некоторых проблем с производительностью, и перешел на VirtualBox 5, и у меня были эти проблемы. Надеюсь, это поможет кому-то еще.


0

Я пришел к этому сообщению, думая, что VT-x не был включен, потому что Hyper-V говорил мне, что «Виртуальная машина использует специфичные для процессора функции, не поддерживаемые на физическом компьютере». Это началось после установки обновлений Windows и перезапуска сервера. На самом деле VT-x был фактически включен.

Исправление состояло в том, чтобы удалить сохраненное состояние для всех виртуальных машин, фактически отключив питание.

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


0

Как уже упоминалось в другом ответе, изоляция ядра, защита приложений, защита учетных данных и защита устройств используют функцию Hyper-V. Если вам не нужен этот уровень безопасности, вы можете отключить их, запустив

DG_Readiness_Tool_v3.5.ps1 -Enable -AutoReboot

или же

mountvol X: /s
copy %WINDIR%\System32\SecConfig.efi X:\EFI\Microsoft\Boot\SecConfig.efi /Y
bcdedit /create {0cb3b571-2f2e-4343-a879-d86a476d7215} /d "DebugTool" /application osloader
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} path "\EFI\Microsoft\Boot\SecConfig.efi"
bcdedit /set {bootmgr} bootsequence {0cb3b571-2f2e-4343-a879-d86a476d7215}
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} loadoptions DISABLE-LSA-ISO,DISABLE-VBS
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} device partition=X:
bcdedit /set hypervisorlaunchtype off
mountvol X: /d

Более подробную информацию об этих командах можно найти в разделе Управление учетными данными Защитника Windows.

Однако в Windows 10 Build 18305 и выше , помимо функций защиты, Windows Sandbox также включит Hyper-V, потому что это также тонкий слой виртуализации.

Если вы хотите использовать функцию песочницы, то, к сожалению, вы не можете отключить Hyper-V, как в других ответах. Есть 2 решения для этого

  • Вместо этого используйте Hyper-V. Если у вас есть виртуальные машины, работающие на других гипервизорах, таких как VirtualBox, просто перенесите их в Hyper-V
  • Включите вложенную подкачку, чтобы вы могли запускать другие гипервизоры внутри Hyper-V. Просто запустите приведенную ниже команду, чтобы включить эту функцию

    Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true
    

Для получения дополнительной информации читайте


bcdedit /set hypervisorlaunchtype offработал на меня
user1641838

@ user1641838 ты прочитал все ответы? Есть много новых функций, которые будут использовать виртуализацию, поэтому вы не сможете запустить другой гипервизор, даже если вы выключили Hyper-V
phuclv

да, я прочитал и перепробовал все ответы в этой теме. И даже после запуска DG_Readiness_Tool был синий экран. bcdedit /set hypervisorlaunchtype offдля меня это единственный способ избавиться от «VT-x недоступен». Другие проблемы появились позже. И я наконец перешел на Hyper-V. Кстати, я использую предварительный просмотр Windows Insider, так что мой опыт варьируется.
user1641838

0

У меня такая же проблема на Virtualbox, и я проверил следующее на моем компьютере

  • VT-x включен в BIOS
  • Виртуализация Hyper-V и платформа Windows Hypervisor отключены в Windows
  • Интеграция памяти отключена

После исключения вышеуказанных причин, я вспомнил, что я только что включил Windows Sandbox, я нашел этот пост .

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

  • Отключить Windows Sandbox и перезагрузить
  • Отключить виртуализацию в BIOS и перезагрузиться
  • Включить виртуализацию в BIOS и перезагрузиться
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.