3

Я просто хотел установить Ubuntu на виртуальную машину VirtualBox. В ответ VirtualBox подал мне ошибку:

VT-x не включен

Я подумал, что это может быть вызвано включенным Hyper-V на моей Windows 8.1.

Я отключил его, и это решило мою проблему. Тогда я начал читать о Hyper-V, и оказалось, что это супер удивительный инструмент Microsoft для виртуализации.

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

  1. Для чего действительно нужен Hyper-V?
  2. Каковы последствия его отключения?
  3. Почему это не работает с VirtualBox?

3 ответа3

10

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

Чтобы понять это, вам нужно знать, что происходит с вашей системой при использовании виртуализации.

Если у вас не включена виртуализация, ваша система работает так:

[Оборудование] -> [Операционная система] -> [Приложения] -> [Вы]

Когда вы делаете с Hyper-V, там есть дополнительный слой:

[Оборудование] -> [Гипервизор виртуализации] -> [Одна из возможно нескольких ОС] -> [Приложения под этой ОС] -> [Вы]

Включив Hyper-V, вы получите гипервизор, даже если вы не заметите никакой разницы. Теперь обратите внимание, что гипервизор находится прямо над аппаратным обеспечением с Hyper-V. Продукты сервера VMWare действуют так же.

Таким образом, когда Hyper-V включен, вы находитесь "в" гипервизоре, даже если на данный момент вы используете только 1 "гостевую" ОС (вашу ОС до Hyper-V).

Аппаратное обеспечение x86 НЕ поддерживает "вложенные" гипервизоры. Инструкция VMXON, которая ее устанавливает, вызовет "выход из ВМ", если включена аппаратная виртуализация. Таким образом, когда гипервизор активен, если ОС в этом гипервизоре пытается настроить виртуализацию, обычно гипервизор просто сообщает гостевой ОС, что виртуализация не поддерживается.

Гипервизор может "эмулировать" аппаратную виртуализацию, если он действительно хочет разрешить гостевым ОС использовать функции виртуализации, но, как вы можете видеть, Hyper-V решил не делать этого (в любом случае, это сложно сделать).

Теперь, если вы используете VMWare Player или Virtual PC таким образом:

[Оборудование] -> [Операционная система] -> [Приложение VM, на котором установлена ОС] -> [Вы]

Проигрыватель VMWare может поддерживать несколько экземпляров самого себя (он устанавливает несколько драйверов), поэтому вы можете без проблем запускать несколько проигрывателей VMWare. Я не уверен, пытались ли вы запустить проигрыватель VMWare и Virtual PC - это, вероятно, не сработало бы.

4

Hyper-V - это версия гипервизора от Microsoft (например, VirtualBox). VT-x представляет технологию Intel для виртуализации на платформе x86. На некоторых материнских платах это можно включить в настройках BIOS. Без включения этого в BIOS ваша виртуальная среда не будет ускоряться с помощью базового оборудования.

Чтобы ответить на ваш вопрос об отключении Hyper-V разрешите VirtualBox доступ к VT-x . Смотрите этот форум http://social.technet.microsoft.com/Forums/windows/en-US/118561b9-7155-46e3-a874-6a38b35c67fd/hyperv-disables-vtx-for-other-hypervisors?forum=w8itprogeneral

Потому что, когда Hyper-V установлен в Windows 8 Pro, гипервизор все время работает под операционной системой хоста, и только одна вещь может одновременно управлять оборудованием VT для стабильности. Гипервизор блокирует все другие вызовы к оборудованию VT.

Вот несколько моментов от MS Technet. Лично я бы не использовал Hyper-V, так как мне нравится макет конфигурации VirtualBox. Если бы я хотел виртуальную машину без головы, я бы бросил экземпляр на свой кластер Proxmox.

Hyper-V - это виртуализация без головы, которая выполняется непосредственно на оборудовании, где Virtualbox требует ОС и представляет собой приложение виртуализации, которое запускается на вашем рабочем столе.

VirtualBox - это то, что вы будете использовать для непосредственной работы с виртуальной машиной, особенно если вам нужен звук, USB и очень широкий спектр поддерживаемых ОС.

Hyper-V предназначен для размещения серверов, где вам не нужно много дополнительного оборудования для настольных ПК (например, USB). Hyper-V должен быть быстрее чем VirtualBox во многих сценариях. Вы получаете такие вещи, как кластеризация, объединение сетевых карт, живая миграция и т.д., Которые вы ожидаете от серверного продукта.

3

Hyper-V действительно блокирует VT-x для вышележащей ОС. Но маленькая вещь, которая помогла мне, включала и выключала Hyper-V при необходимости (не устанавливая / удаляя, что довольно сложно), как описано здесь с помощью следующих команд

bcdedit /set hypervisorlaunchtype off

bcdedit /set hypervisorlaunchtype auto start

Теперь вы сможете использовать Heper-V и VirtualBox, когда это необходимо (не сразу, по причине, а с помощью шага "одиночная перезагрузка").

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .