虚拟机启用嵌套的 vtx/amd-v 变灰

在我的 Ubuntu 18.04上,我已经安装了 VirtualBox 6.0以便拥有 嵌套虚拟化

但是,当我打开我的(关机)虚拟机的设置,转到 系统-> 处理器,选项“ 启用嵌套 VT-x/AMD-V”是灰色的,我不能启用它。

enter image description here

174555 次浏览

据我所知,这个选项只能在 AMD CPU 上使用,而不能在 Intel CPU 上启用。这有点误导人,因为该选项清楚地说明了 Intel 和 AMD 虚拟化技术。

下面是 VirtualBox 文档中的官方确认: Https://www.virtualbox.org/manual/ch03.html 第3.5.2章处理器选项卡

启用嵌套 VT-x/AMD-V: 启用嵌套虚拟化,并将硬件虚拟化函数传递给客户虚拟机。

此特性可用于使用 AMD CPU 的主机系统。对于英特尔 CPU,此选项为灰色。

到目前为止,它只适用于 AMD CPU (忘记令人困惑的选项标题)。

最初这只是针对 AMD CPU 的。

所有英特尔 CPU 职位将被删除/拆分。

Https://forums.virtualbox.org/viewtopic.php?f=1&t=90831

Https://forums.virtualbox.org/viewtopic.php?f=7&t=90874

执行这个:

$ VBoxManage modifyvm <VirtualMachineName> --nested-hw-virt on

适用于视窗

窗户中,转到 VirtualBox 安装文件夹-> 在工具栏上键入 cmd (它会在该文件夹中弹出 cmd)-> 键入 VBoxManage modifyvm <YourVirtualMachineName> --nested-hw-virt on-> Enter。

现在应该选中该选项。

VirtualBox 6.1.2工作(英特尔 i72630QM)

(VBoxManage modifyvm lubuntu18 --nested-hw-virt on)

result on linux

enabled in GUI

它在 VirtualBox6.1.2 r135662(Qt5.6.2)和英特尔酷睿 i3-8100上运行!

Screenshot of available NestedVT

CMD 的图像文本输出:

C:\WINDOWS\system32>ssh myuser@192.168.56.111
myuser@192.168.56.111's password:
Last login: Mon Feb 17 10:11:06 2020 from 192.168.56.1


myuser@nestedvt ~ $ su
Пароль:


root@nestedvt /home/myuser # egrep "svm|vmx" /proc/cpuinfo
root@nestedvt /home/myuser #


root@nestedvt /home/myuser # poweroff
Connection to 192.168.56.111 closed by remote host.
Connection to 192.168.56.111 closed.


C:\WINDOWS\system32>cd "C:\Program Files\Oracle\VirtualBox"
C:\Program Files\Oracle\VirtualBox>VBoxManage modifyvm CentOS7_nestedVT --nested-hw-virt on


C:\Program Files\Oracle\VirtualBox>VBoxManage startvm CentOS7_nestedVT
Waiting for VM "CentOS7_nestedVT" to power on...
VM "CentOS7_nestedVT" has been successfully started.


C:\Program Files\Oracle\VirtualBox>ssh myuser@192.168.56.111
myuser@192.168.56.111's password:
Last login: Mon Feb 17 10:12:08 2020 from 192.168.56.1


myuser@nestedvt ~ $ su
Пароль:


root@nestedvt /home/myuser # egrep "svm|vmx" /proc/cpuinfo
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single tpr_shadow flexpriority fsgsbase avx2 invpcid rdseed clflushopt md_clear flush_l1d
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single tpr_shadow flexpriority fsgsbase avx2 invpcid rdseed clflushopt md_clear flush_l1d


root@nestedvt /home/myuser # exit
exit
myuser@nestedvt ~ $ exit
logout
Connection to 192.168.56.111 closed.


C:\Program Files\Oracle\VirtualBox>wmic cpu get name
Name
Intel(R) Core(TM) i3-8100 CPU @ 3.60GHz


C:\Program Files\Oracle\VirtualBox>wmic os get caption
Caption
Microsoft Windows 10 Pro

在执行 VirtualBox 的目录中,我运行了一个类似的命令(注意引号的位置!)!

“ path to ubuntu 18.04.3. vbox”—— nested-hw-virt on

希望这个能帮上忙。 BD

原来它变成灰色是有原因的!我有 Windows10主机,我使用 Docker 一段时间和卸载,但它保持 Hyper-V 技术启用(这是与虚拟化不兼容)。

不要在服务器上做 | 这将禁用 Hyper-V 技术-使用您自己的风险

作为管理员打开命令提示符并运行以下命令,然后重新启动电脑

DISM /Online /Disable-Feature:Microsoft-Hyper-V

PowerShell Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-Hypervisor -All

bcdedit /set hypervisorlaunchtype off

问题的原因是 超 V。 如果要使用嵌入式虚拟化,应该使用 关掉hypervisorlaunchtype
这招对我很管用: bcdedit /set hypervisorlaunchtype off

问题有时是您的机器已经保存了它的状态,但是保存的状态不是正确的状态,所以您单击您的机器,然后在顶部忘记,以忘记任何已保存的状态。在我的情况下,这解决了案件

视窗10中,这个问题是由于 记忆完整性处于活动状态而引起的。 Windows 安全性-> 设备安全性-> 核心隔离详细信息

禁用内存完整性,然后重新启动 Windows。
VB 选项“启用嵌套 VT-x/AMD-V”应该仍然是灰色的。
现在,在 VB 安装文件夹中打开一个新的 PowerShell,然后键入: < br > ./VBoxManage modifyvm "Virtual Machine Name" --nested-hw-virt on
你会发现详细的信息 给你(我想为什么微软没有提到这个问题了)。

最近这个在 Windows 11上突然出现在我面前。我已经从之前的调整中关闭了超 V 一切都正常。最后我不得不使用这个命令:

bcdedit /set hypervisorlaunchtype off

修好了,但是它打破了最近11年推出的 适用于 Android 的 Windows 子系统所以,有..。

仅供参考,

VirtualBox 在运行 AMDIntel CPU 的主机系统上支持嵌套虚拟化。
有关详细信息,请参阅: Https://docs.oracle.com/en/virtualization/virtualbox/6.0/admin/nested-virt.html

VBoxManage modfyvm —— nested-hw-virt on 这个可以。

在 Virtualbox 从 Windows 主机启用 VT-x/AMD-V。

  • 从 cmd 打开 Oracle 虚拟机安装文件夹位置 Cd C: Program Files OracleVirtualBox 然后运行命令。 VBoxManage modfyvm —— nested-hw-virt on

  • 启用嵌套的 VT-x/AMD-V 你的虚拟盒子