如何在Ubuntu中启用嵌套虚拟化


Answers:


34

KVM需要VT-X / AMD-V,但VirtualBox 不会将VT-X / AMD-V传递给来宾操作系统。

因此,KVM无法在VirtualBox中运行。请跟踪错误代码#4032

VT-X和AMD-V(所谓的虚拟化扩展)在CPU中本地运行客户机操作系统。没有它们,虚拟化软件必须解释软件中的操作系统操作码,这非常慢。

目前,您可以

  • 在管理程序中运行KVM,该管理程序将虚拟化扩展传递给来宾(例如VMware Workstation 8中的 KVM ),或者
  • 在VirtualBox内运行另一个管理程序(例如VirtualBox内的VirtualBox)。此选项将非常慢,因为来宾将错过VT-X / AMD-V。

在主机中运行它的可能性如何?例如,共享他要在其来宾中测试的文件夹,并在主机上运行说android仿真?表现如何?
Toskan

3
命令以检查您的CPU是否支持KVM :egrep -c "(svm|vmx)" /proc/cpuinfo。0表示不。
Woeitg '17

10

Virtualbox刚刚发布了(12/18/2018)版本6,该版本预计将嵌套虚拟化。但是,目前看来,它在Intel proc上仍然不可用。 https://www.virtualbox.org/wiki/下载

关于主要问题(在Ubuntu中启用嵌套虚拟化)-KVM模块在Ubuntu 16及更高版本(可能也是较低版本)上支持嵌套虚拟化。不确定要在主机上使用XEN,但是可以肯定地将XEN嵌套在KVM中。


2
您可以使用以下方法“激活”嵌套虚拟化:vboxmanage Modifyvm yournestedvmname --nested-hw-virt on,或在.vbox文件的CPU部分添加<NestedHWVirt enabled =“ true” />,但唯一的效果是,激活UI上的coresponding复选框。cat / proc / cpuinfo在guest虚拟机上,仍然没有vmx。
乔治·邦加热斯库
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.