我刚刚发现 VT-x 在 VirtualBox 5.0.14 中的 Windows 10 主机上不再起作用。
尝试启动我的一个 x64 客户机现在会导致“VT-x 在 BIOS 中对所有 CPU 模式均被禁用”错误,并且我无法再选择多个 CPU 或创建 x64 客户机。
BIOS 中启用了 VT-x,但未安装 Hyper-V。事实上,VT-x 直到今天都运行良好。
我尝试重新启动多次并重新安装 VirtualBox,但无济于事。
似乎没有人遇到过类似的问题。
会是什么呢?
主机是联想 Yoga Thinkpad 15,运行的是英特尔 i5-5200U @ 2.20 GHz。
答案1
我遇到了同样的问题并解决了它:有些东西正在使用 VT-x 功能,根据 Oracle 论坛上的一篇帖子(链接丢失,谷歌了一下),vbox 使用虚拟化的方式与前者不兼容。您可以通过运行来确认是否是这种情况msinfo32.exe
,滚动到底部并查找像“检测到虚拟机管理程序...”这样的字符串作为最后一行。如果您看到大约 4 行关于 hyper-v 功能的内容,则您的问题与我的问题不同,解决方案可能不适用。
因此,现在开始进行可能令人沮丧的搜索,以了解什么是使用虚拟化......
如果 hyper-v 已安装并正在运行(检查 windows 服务)您可以尝试将其删除;控制面板 > 程序 > 打开或关闭 Windows 功能
人们还提到“除 BitDefender 之外的其他防病毒软件”和在 XP 兼容模式下运行的程序是罪魁祸首。我尝试终止所有进程并停止所有服务 - 但没有成功(这样做风险自负,您可能会破坏某些东西……)
最后,有人向我暗示了 Windows 中一项名为“基于虚拟化的安全性”的新功能。转到任务管理器并在“详细信息”选项卡下查找名为 的进程Secure System
。如果此进程运行,则您可能已经找到问题的原因;尽管如上所述删除了 hyper-v,但此功能会运行一些深层的虚拟机管理程序,从而阻止 virtualbox。
在 regedit.exe 中设置HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard
为0
并重新启动。对我来说很管用。请注意,您正在禁用安全功能,请参阅https://technet.microsoft.com/en-us/itpro/windows/keep-secure/deploy-device-guard-enable-virtualization-based-security了解详情。
答案2
今天我遇到了同样的问题。在 Windows 10 上安装 Windows 版 Docker 后。显然,“Docker for Windows”和 VirtualBox 不能安装在同一台机器上。原因是“Docker for Windows”基于 Hyper-v。这有很好的文档和解释这里。
因此,我们必须选择 Hyper-v 或 VirtualBox,不能同时安装两者。就我而言,我卸载了“Docker for Windows”,并从我的机器中删除了 Hyper-v。删除 Hyper-v 的说明如下这里. 然后 VirtualBox 又可以工作了。
至于使用 Docker 容器,我仍然可以在没有 Hyper-v 的 VirtualBox Linux 客户机上运行 Linux Docker 容器(实际上这正是 Hyper-v Linux 实现)。