最近,我开始在运行HP EliteBook的Windows 10上出现VT-x的问题。之前,我曾使用Oracle VirtualBox在其上运行某些VM,并且在BIOS中启用了VT-x,并且运行良好。

每次尝试启动任何VM时,我都会收到VT-x is not available错误。在我将Docker安装到机器上之后,这种情况开始发生,因此我尝试将其卸载并重新启动。没有帮助。

我检查了BIOS设置,并说启用了VT-x,但是使用Intel(R)Processor Identification Utility进行的检查显示不支持VT-x,并且Oracle VirtualBox也不支持看到它。

没有硬件更改,唯一的软件更改是安装/卸载Docker。

如何解决此问题?

评论

无法添加答案,因此无法添加评论-对我而言,更新到最新的Oracle VirtualBox并取消了“设置”->“显示”->“启用3D加速”。

#1 楼

用户看到的错误类型有以下三种常见原因:


BIOS中未启用VT-x
CPU不支持VT-x
Windows中启用了Hyper-V虚拟化

由于用户已经消除了前两个可能的罪魁祸首,因此下一步是以管理员身份打开命令提示符并运行以下命令:

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


之后,重新启动PC并再次尝试VirtualBox。

评论


进一步说明:Docker在Windows Hyper-V之上运行。 Docker安装将其打开,但是卸载并没有关闭Hyper-V。

–Tonny
16 Dec 6'在15:43

出于完整性考虑:某些使用VT-x隐藏在操作系统中的病毒也可能发生这种情况。这些很少。

–西蒙·里希特(Simon Richter)
16 Dec 6'在19:51

应当注意,自1607年更新以来,Hyper-V在技术上确实支持嵌套虚拟化。如果同时需要Hyper-V和VBox,则可以尝试启用它。

–鲍勃
16 Dec 7'在6:45

另外,还应禁用[Virtual Machine Platform]窗口功能。

–lintabá
19年2月2日在15:27

看起来在更新的Windows 10构建中,功能具有不同的名称HypervisorPlatform,因此您需要:dism.exe / Online / Disable-Feature:HypervisorPlatform

– Aganju
19年4月21日在2:03



#2 楼

将Windows 10更新为“秋季创作者更新”后,我遇到了同样的问题。我通过以下步骤解决了该问题:


启用“打开或关闭Windows功能”中“ Hyper-V”下的所有功能。
重新启动。 br />禁用“打开或关闭Windows功能”中“ Hyper-V”下的所有功能。
重新启动。
现在VirtualBox再次运行,并且在其操作列表中显示(64位)系统。


评论


对于不耐烦的人:禁用Hyper-V花费了Windows几分钟。

–詹斯·皮格萨(Jens Piegsa)
18年2月20日在11:49

不幸的是没有为我工作...

–马赫迪·拉希迪(Mahdi Rashidi)
18年7月28日在15:27

win10更新后出现相同的问题,罪魁祸首是启用Hyper-v功能的更新。所以我做了几次试验,最后终于成功了:从BIOS启用intel virtu ..和vt-d,然后从控制面板>启用或禁用Windows功能禁用Windows Hypervisor平台和虚拟机平台,然后重新启动PC

– PauAI
19-09-22在21:50

为我工作。但是,我也运行了此cmd-dism.exe / Online / Disable-Feature:Microsoft-Hyper-V

– Darshan L
20-2-17在7:29

完成这五个步骤并重新启动一次对我来说很有效。

–琼·迪迪埃·索托(Jhon Didier Sotto)
20年8月22日在22:44

#3 楼

遇到此问题时,与我尝试创建64位虚拟机时相比,VMWare Player的诊断响应要好于VirtualBox。

它说我的机器具有企业功能Device Guard和Credential Guard已启用。我想当我运行MalwareBytes时它们被启用了。我想不出我所做的任何其他更改。

VMWare Player向我指向了一个名为“管理Windows Defender凭据保护”的页面。该页面上有很多有关组策略管理器设置等方面的内容,这些内容当然与W10 HOME安装无关。

反过来,该页面将我指向Device Guard和Credential Guard硬件。准备工具,一种用于在服务器上启用和禁用此功能集的PowerShell工具。

在“以管理员身份运行”的Power Shell中运行该工具并给出此命令

 .\DG_Readiness_Tool_v3.5.ps1 -Disable -AutoReboot


带我了解了禁用这些功能的过程。

我还拥有虚拟化功能。

评论


该脚本为我解决了这个问题(Windows 10,Enterprise N,内部版本18363)。其他所有功能均无作用或已被停用(HyperV,虚拟化平台...)。这终于成功了,VirtualBox再次起作用,非常感谢!

– Wiste
20-2-11在11:17

为我做到了,非常感谢!

– Mahmoud Hanafy
20 Mar 10 '20 at 8:54

这是我所缺少的。谢谢。

–dcorsello
20-4-24的1:49

这也是唯一帮助我的事情。我不习惯停用凭据保护,因此只停用了Virtualization Guard(重新启动后出现了这些选项)。够了

– Spenhouet
20年6月18日在9:04

#4 楼

如果您使用的是Windows 10的最新版本,请禁用“设备安全性”中的“内存集成”并重新启动。

启用此选项时,我面临类似的问题虚拟框。禁用它对我有用。



评论


这应该添加到接受的答案中

– Sreenikethan I
20-2-15在16:11

对你来说,也许。但是我已经禁用了它,但仍然无法启动VirtualBox。

– Artem Russakovskii
20年4月7日,下午4:51

#5 楼

我在Virtualbox上遇到了同样的问题,并且已经在计算机上检查了以下内容


BIOS中启用了VT-x
Hyper-V虚拟化和Windows Hypervisor平台是在Windows中已禁用
已禁用内存集成

排除上述原因后,我记得我刚刚启用了Windows Sandbox,因此发现了这篇文章。

问题出在Windows沙箱上,但仅从Windows功能中禁用Windows沙箱,重新启动将不起作用。您必须按照上述帖子中的说明执行以下操作:


禁用Windows沙箱并重新启动
在BIOS中禁用虚拟化并重新启动
在BIOS中启用虚拟化并重新启动


评论


这个工作了!多谢兄弟。

– Amr SubZero
19年11月21日在20:07

删除沙箱后,我就像“ Whattttt,禁用并重新启用虚拟化??这很愚蠢”。不,不,从字面上解决了它。亲爱的,先尝试一下再尝试。

–约书亚·迈克尔(Joshua Michael)
20 Mar 15 '20 at 1:10

#6 楼

我被Windows功能对话框中的两个选项关闭而感到震惊:


Hyper-V
Windows Hypervisor平台

我曾尝试升级到VirtualBox 6和一些性能问题,然后降级到VirtualBox 5并遇到了这些问题。希望这可以帮助其他人。

#7 楼

Virtualbox工作正常。我今天(2017年6月29日)更新了Avast防病毒软件。Virtualbox随后给出了VT-x错误。在“ Avast设置”中,转到“疑难解答”并启用“在可用的地方使用嵌套虚拟化”,然后重新启动PC。这对我有用,不需要其他更改。

评论


从今天开始(vmm.sys)在这里出现蓝屏,我使用avast free,但没有看到该选项。

–丹
17年6月30日在5:49

Windows Defender存在相同的问题。我启用了设备安全性-核心隔离。禁用该功能可以解决我的问题。

– Tsuharesu
18年8月22日在0:29

#8 楼

如另一个答案所述,核心隔离,Application Guard,Credential Guard和Device Guard利用了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 Defender凭据保护”中找到

,但是在Windows 10 Build 18305及更高版本上,除了保护功能外,Windows沙箱还将启用Hyper-V,因为它也一薄层虚拟化

如果要使用沙盒功能,那么很遗憾,您不能像其他答案中那样禁用Hyper-V。为此有很多解决方案


使用Hyper-V代替。如果您有在其他虚拟机管理程序(例如VMWare)中运行的VM,则只需将其迁移到Hyper-V
,使用支持Hyper-V的虚拟机管理程序(例如VirtualBox)。请参见将Hyper-V与Oracle VM VirtualBox一起使用


启用嵌套分页,以便可以在Hyper-V内运行其他管理程序。只需运行以下命令即可启用该功能

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



有关更多信息,请阅读


运行Hyper-V带有嵌套虚拟化的虚拟机中
在启用了Credential Guard / Device Guard的Windows 10主机上的VMware Workstation中打开虚拟机电源失败,并显示BSOD(2146361)
VMware Workstation与Device / Credential Guard不兼容。


评论


bcdedit / set hypervisorlaunchtype off对我有用

– C.W.
19年8月24日在16:10

@ user1641838您已阅读所有答案吗?许多新功能将使用虚拟化,因此即使您关闭了Hyper-V,您也将无法运行其他虚拟机管理程序

–phuclv
19年8月25日在13:25

是的,我阅读并尝试了该线程中的所有答案。运行DG_Readiness_Tool之后甚至出现蓝屏。 bcdedit / set hypervisorlaunchtype off是我摆脱“ VT-x不可用”的唯一方法。不过,其他问题接after而至。最后我改用了Hyper-V。顺便说一句,我正在使用Windows Insider预览,所以我的想法各不相同。

– C.W.
19年8月26日在14:12

@ user1641838同样在这里!我只需要关闭bcdedit / set hypervisorlaunchtype,然后重新启动,现在我的VM便又可以工作了

– Marko Pacak
20 Sep 25 '13:48

#9 楼

Hyper-V和VirtualBox可以在Windows 10上共存。如何在Windows 10上同时使用VirtualBox和Hyper-V中记录了配置步骤。要点是

启用Hyper-V和Windows虚拟机管理程序平台


将来宾VM的准虚拟化接口设置为Hyper-V




#10 楼

我来到这篇文章时以为未启用VT-x,因为Hyper-V告诉我“虚拟机正在使用物理计算机上不支持的处理器特定功能”。这是在安装Windows更新并重新启动服务器后开始的。实际上,VT-x实际上是启用的。

修复程序是删除所有VM的已保存状态,实际上是关闭了电源。

可能是CPU微代码的更新,但很难确定,它只是许多搜索结果中出现的内容。

#11 楼

在尝试了许多与此处相关的技巧之后,对我有用的唯一更改是:


在某些具有EFI BIOS的Windows主机上,默认情况下DeviceGuard或CredentialGuard
可能处于活动状态,并且以与Hyper-v相同的方式干扰操作系统级虚拟化
应用程序。这些功能需要
禁用。在Windows Pro专业版上,您可以使用gpedit.msc
(将本地计算机策略>计算机配置>管理
模板>系统> Device Guard>将基于虚拟化的安全设置为[禁用]打开)来执行此操作。


#12 楼

只需确保您的计算机上没有其他东西正在使用VT-x。对我来说,卡巴斯基反病毒软件使用虚拟化来运行其安全浏览器。禁用此设置,然后重新启动可解决此问题。