Невозможно установить виртуальную машину в другую виртуальную машину

23

Мой хост-компьютер работает под управлением Windows 10, а мой гость - Ubuntu в VirtualBox. Я пытаюсь запустить третью виртуальную машину на Ubuntu, но VirtualBox говорит:

Не удалось открыть сеанс для виртуальной машины Windows XP. VT-x не доступен. (VERR_VMX_NO_VMX).

Он также вернул код ошибки 0x80004005

Конечно, у меня включена виртуализация. Это даже не вариант выключить в моем BIOS (MSI z170a). Моя машина очень высокого класса, поэтому я знаю, что она может работать, я исключил все, что мог.

SidedTech
источник
4
FWIW, KVM можно сделать вложенным.
Йонас Шефер
1
Насколько я помню, 32-битная внутренняя виртуальная машина должна работать, поскольку для этого не требуется аппаратная виртуализация (VT-x). Предполагая, что вы заинтересованы в 32-битной Windows XP, это должно работать для вас.
CodesInChaos
4
В любом случае, зачем вкладывать Virtualboxes?
Xen2050
4
@ Xen2050 потому что, VMception.
Дэвид Рефуа
@DRSDavidSoft Это был мой первый, хотя тоже ... SidedTech, возможно, искал VMception , нашел бы Вы можете запустить эмулятор машины (Bochs) внутри виртуальной машины? который косвенно отвечает на его вопрос. Я бы предположил что-то вроде: «Мне пришлось перенести установку Linux на ВМ [по какой-то веской причине], но я все еще хочу запустить свою ВМ, я держу в Linux и не знаю, просто ли» копирование конфигурационных файлов в win будет работать, и я не хочу пытаться "
Xen2050

Ответы:

45

То, что вы пытаетесь сделать, это вложенная виртуализация. Он не поддерживается в virtualbox и никоим образом не является для них приоритетом.

Вам нужно будет запустить виртуальную машину XP на хосте.

В теории вы можете запустить старый добрый QEMU на виртуальной машине (он эмулирует весь процессор и почти всю систему), но производительность будет действительно очень плохой.

Подмастерье Компьютерщик
источник
Производительность этого, вероятно, будет напоминать ранние решения для виртуализации ПК (без аппаратного обеспечения). Подумайте вялой MS-DOS на современном оборудовании ...
в CVN
4
@ MichaelKjörling Почему сравнение? Ранняя виртуализация ПК была аппаратной, но не так, как сегодня. VMWare использовал для запуска кода кольца 0 в кольце 1 с ловушками для некоторых инструкций и другими хитростями, такими как переписывание кода ядра. Насколько я помню, метод VMWare на самом деле был на пару% быстрее, чем VT-x, когда VT-x впервые появился, в соответствии с тестами в то время, поэтому совсем не медленный. Кстати, запуск вложенной старой версии VMWare или, может быть, VBox с отключенным VT-x на 32-разрядном гостевом компьютере может действительно работать и работать относительно хорошо. Даже если бы я сделал это только из любопытства.
nitro2k01
@ nitro2k01 Когда Майкл отказывался от «ранних» решений по виртуализации, которые он имел в виду очень рано, как в середине 90-х годов. В те времена существовал продукт под названием Virtual PC (позже купленный Microsoft), который работал не только на Mac, но и на процессоре PowerPC, эмулирующем x86. Ваша VMWare не ранняя, она определенно очень современная
slebetman
@slebetman Virtual PC впервые выпущен в 1997 году. VMWare впервые выпущен в 1999 году, о чем я и говорил тогда. Сравнение эталонных тестов с VT-x, конечно, было сделано гораздо позже, но я упомянул об этом просто, чтобы показать, что оригинальный метод виртуализации VMWare не обязательно был медленным. Оригинальный Virtual PC, несмотря на название, на самом деле не виртуальная машина, а эмулятор.
nitro2k01
@ nitro2k01: ах да. Я помню это. VMWare Fusion, который также эмулировал x86 на машинах PowerPC. Спасибо, что напомнили мне об этом. Итак, VMWare, по доказательствам вы сами предоставили. Первоначально действительно было похоже на то, как упоминал Майкл (несмотря на то, что он не упомянул VMWare конкретно)
slebetman