【问题标题】:virtualbox Raw-mode is unavailable courtesy of Hyper-V windows 10由 Hyper-V windows 10 提供的 virtualbox 原始模式不可用
【发布时间】:2018-10-07 18:13:28
【问题描述】:

问题:

Failed to open a session for the virtual machine ubuntu.

Raw-mode is unavailable courtesy of Hyper-V. (VERR_SUPDRV_NO_RAW_MODE_HYPER_V_ROOT).

Result Code: E_FAIL (0x80004005)
Component: ConsoleWrap
Interface: IConsole {872da645-4a9b-1727-bee2-5585105b9eed}

更新: 解决方法如下。

【问题讨论】:

  • 我有 win 10 和英特尔酷睿 i7。它对我有用。我不知道为什么,但是如果您对任何特定设置感兴趣,我可以找您。到目前为止,我只能看到一个区别 - 我在“Windows 功能”中启用了“容器”。我不认为这是原因。当我遇到这个问题时,我所做的只是去控制面板\程序\程序和功能\并禁用勾选框,它有帮助。我从不在 cli 中运行命令。可能是这个原因吗?
  • 我赞成你的问题,因为我认为它很重要。然而,它的设置很糟糕,我的意思是你在一篇文章中问了几个问题,这令人困惑。让我在评论中回答您的问题 (4):当您的 Hyper-V 处于活动状态或在 BIOS 中禁用虚拟化时,VM box Acceleration 将被停用。
  • 我一直在努力解决 Hyper-V 问题。问题是我无法更改处理器和加速设置,也无法运行虚拟操作系统。我尝试删除旧虚拟机并创建一个新虚拟机。但没有任何效果。我的系统中的 Windows 功能下的 Hyper-V 设置未列出。 BIOS 中的虚拟化已启用。解决方案:关闭 Windows Defender 安全中心下的“核心隔离”。
  • 我有同样的问题,我按照你的步骤。当我到达最后一步时,VM box Acceleration 处于活动状态并检查了所有项目。现在,虚拟机启动,错误未显示。谢谢:)
  • 禁用容器和 Hyper-V 对我有用。

标签: virtual-machine virtualbox


【解决方案1】:

您可能需要禁用虚拟机管理程序。

所以,请按照以下步骤操作:

1)以管理员身份打开命令提示符

2) 运行 bcdedit 检查管理程序状态:

bcdedit

3) 检查管理程序启动类型:

4) 如果设置为 auto 则禁用它:

bcdedit /set hypervisorlaunchtype off

5)重启主机并再次启动VirtualBox

【讨论】:

  • 禁用它,但这没有帮助
  • 这是为我做的(Windows 10 家庭版)。非常感谢。
  • 这在某种意义上有效,它解决了 VirtualBox 问题,但现在 Android Studio 无法启动模拟器,这就是我必须首先启用 Hyper-V 的原因。我有一个 Ryzen 7 CPU,Windows 10 18936(Insider Preview)。
  • 当我将 VM 从 VMware 转换为 VB 时,我得到了解决。谢谢!
  • 如果你想启用 hyper V 后台运行:bcdedit /set hypervisorlaunchtype auto
【解决方案2】:

为我修复了禁用 Device Guard 或 Credential Guard:

  • 单击开始 > 运行,键入gpedit.msc,然后单击确定。 Local Group Policy Editor 打开。 转到Local Computer Policy > Computer Configuration > Administrative Templates > System > Device Guard > Turn on Virtualization Based Security。 选择已禁用。
  • 转到Control Panel > Uninstall a Program > Turn Windows features on or off 关闭Hyper-V

选择。不要重启。

通过使用管理员帐户在主机上启动命令提示符并运行以下命令来删除相关的 EFI 变量:

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:
mountvol X: /d

注意:确保 X 是未使用的驱动器,否则更改为另一个驱动器。

重启主机。 接受启动屏幕上的提示以禁用 Device Guard 或 Credential Guard。

来源:https://kb.vmware.com/s/article/2146361

【讨论】:

  • 运行所有这些命令来更改 EFI 变量对我来说是一个缺失的步骤。现在虚拟化可以工作了。
  • 禁用组策略 + 卸载 Hyper V 为我工作。我不必做 EFI 相关的变量。
  • 如果安全启动处于活动状态,则只有此解决方案适用于我。否则(如果我不删除 EFI 变量).......操作系统将无法启动。因此,请注意现代 Windows 10 计算机上的第一个解决方案!
【解决方案3】:
  1. 禁用 Hyper-V(控制面板\程序\程序和功能\Hyper-V)

  2. 修改 BCD(bcdedit /set hypervisorlaunchtype off)

  3. 如果启用了核心隔离,请将其关闭(Windows Defender 安全中心> 设备安全> 核心隔离)

如果不能修改,可以将注册表中的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCode Integrity\Enabled的值改为0

【讨论】:

  • 注册表项至少对我来说不存在,即使在HKLM/SYSTEM/CurrentControlSet/Control/DeviceGuard下也是如此
  • 关闭核心隔离是最终为我解决问题的技巧。我已经尝试了 bcdedit 和卸载 hyper-v 等主要建议。
  • 这对我有用,尽管屏幕截图在不同的语言环境中。
  • 这行得通,但第 1 步对我来说不是必需的,因为根本没有 Hyper-V 项目。
  • 取消选中 Hyper V 和容器对我有用。感谢您的解决方案
【解决方案4】:

1) 以管理员模式在 powershell 中运行以下命令:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All

2) 以管理员模式在命令提示符下运行以下命令:

bcdedit /set hypervisorlaunchtype off 

3) 禁用 Hyper-V:控制面板\程序\程序和功能\

4) VMBox 内存达到:3155 MB (VMbox->settings->system)

VM 框加速已停用。这个怎么激活?并修复上述错误?

重启系统。

【讨论】:

  • 这很可能是安装 Docker 造成的
  • 是的,这绝对是 Docker,给我造成了这个问题。我的问题是,我想同时运行。
  • 花了几个小时,仍然没有运气。该死的码头工人
  • @Danon,我没有安装 docker
【解决方案5】:

要检查 Windows 10 中 Hyper-v 的状态,

右击→运行→OptionalFeatures.exe,→寻找“Hyper-V”选项。

该框应该是空的,没有选中或阴影。

确保在更改 Hyper-v 设置后完全关闭并重新启动主机。

PS

Docker 以在不征求用户意见的情况下激活这个“Hyper-V”而闻名,然后 Oracle VirtualBox 不想工作。

【讨论】:

  • 我已经给出了上面 Hyper-V 的截图。它清楚地表明 Hyper-V 已禁用。并多次重启。
  • 我明白了,这个答案对你没有帮助,但它可能对其他人有帮助。让我们保留它,好吗?
【解决方案6】:

我现在终于可以解决问题了。

首先,我们需要识别或了解大多数人没有真正发现的问题,我的 VM 带有 Ubuntu 64 位的来宾操作系统,但导入后,我们检查该 VM,它仅显示 32 位操作系统。

当我们启动虚拟机时,我们得到如下错误:

Failed to open a session for the virtual machine ERPNext-Develop-20180331192506.

Raw-mode is unavailable courtesy of Hyper-V. (VERR_SUPDRV_NO_RAW_MODE_HYPER_V_ROOT).

Result Code: E_FAIL (0x80004005)
Component: ConsoleWrap
Interface: IConsole {872da645-4a9b-1727-bee2-5585105b9eed}

我确实尝试了上述解决方案,但不知何故并没有真正奏效,否则我可能会错过一些东西。

然后我注意到上面的一点(32 位操作系统),所以我认为问题可能出在这个问题上。

根据网上的一些帖子,可以说明 Windows 10 还带有与 Oracle VM VirtualBox 冲突的 Hyper-V。

所以我做了...

1.在组策略中禁用基于虚拟化的安全性

  • 开始运行应用程序并启动:gpedit.msc
  • 转到计算机配置 > 管理模板 > Device Guard

  1. 禁用 Microsoft Hyper-V

    • 开始运行应用程序并启动:OptionalFeatures.exe
    • 取消勾选:Hyper-V
    • 重启电脑

然后我们就可以使用虚拟机了,它已经启动了。以上两步中,我相信第二步真的解决了。

无论如何,请尝试一下,让我们知道它是否有帮助。

【讨论】:

    【解决方案7】:

    我想了解如何将 vagrantvirtualbox 一起使用,但收到错误消息“Hyper-V 提供的原始模式不可用'。 为了解决这个问题,我想我做了上面所有建议的更改(谢谢大家),还有一些。

    让我总结一下:

    (cmd:optionalfeatures)
    关闭“Hyper-V”
    关闭“容器”
    关闭“Linux 的 Windows 子系统”

    cmd: bcdedit /set hypervisorlaunchtype off

    ( cmd: gpedit.msc )
    本地计算机策略 -> 计算机配置 -> 管理模板 -> 系统 -> Device Guard ->
    禁用“打开基于虚拟化的安全性”

    设置 -> 更新和安全 -> Windows 安全 -> 设备安全 -> 核心隔离详细信息 -> 内存完整性 -> 关闭

    【讨论】:

    • 我没有设置值的“打开基于虚拟化的安全性”,所以我不知道是否有帮助,或者禁用容器,也许是容器。谢谢。
    【解决方案8】:

    您需要禁用 Windows Hyper-V 功能和 bcd。然后 Virtual Box 将在最新的 Windows 10 版本(2018 年 1 月至 3 月)中运行。 Windows 10 Hyper-V 与 VirtualBox 功能发生冲突。

    我已经通过以下步骤解决了这个问题-

    1. bcdedit /set hypervisorlaunchtype off
    2. Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All
    3. 重新启动您的窗口

    对此的详细讨论可在 - https://forums.virtualbox.org/viewtopic.php?f=6&t=87237

    或者,您可以使用最新的 bash 命令在 Windows 10 中安装 linux (Ubuntu) - https://www.windowscentral.com/how-install-bash-shell-command-line-windows-10

    【讨论】:

    • 在我的机器上改变了这个(2把这个信息放在具有管理员权限的powershell中),但是,重启后,完全没有效果,还有其他可能吗?
    • 概念是不能有2个虚拟盒子并行运行。您必须禁用 Windows 10 Hyper V,然后才能安装和运行另一个 Virtual Box。或者,您可以在 bash 模式下直接在 Windows 10 上安装 ubuntu。
    • 如果在cmd而不是powershell中运行,修改后的第二条命令为powershell -Command "Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All"
    【解决方案9】:

    对我来说,以下三者的组合是解决方案:

    1。 控制面板 > 打开或关闭 Windows 功能 > Hyper-V:取消选择

    2。 admin cmd > bcdedit > hypervisorlaunchtype:Auto 禁用: bcdedit /set hypervisorlaunchtype off

    3。 gpedit.msc > '计算机配置 > 管理模板 > 系统 > Device Guard' > 打开基于虚拟化的安全性: 从“未配置”更改为“已禁用”

    重启


    注意:重启后,VirtualBox 工作正常,但 Docker Desktop 的 VirtualBox 开始抱怨缺少 Hyper-V!

    看来这可能是我所有邪恶的根源...... 额外信息:https://forums.docker.com/t/running-docker-and-virtualbox-on-the-same-machine/23578/13

    【讨论】:

      【解决方案10】:

      您必须禁用内存完整性。

      转到设备安全,然后是核心隔离,禁用内存完整性并重新启动。

      似乎 Memory Integrity 虚拟化了一些进程(在本例中为 VMware),我们得到了那个错误。


      如果您的控制面板显示“这是由您的管理员管理”,您也可以从注册表编辑器中禁用内存完整性。

      Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity

      双击Enabled 并将其值从1 更改为0 以禁用它。


      有用的来源:https://forums.virtualbox.org/viewtopic.php?t=86977#p420584

      【讨论】:

      • 在我的机器上改变了这个,但是,重启后,完全没有效果,还有其他可能吗?
      • @Mike 这个问题有很多不同的答案,所以我猜这是一个新问题。您必须考虑与 Hyper-V 相关的内容可能在您的机器中的什么位置,然后诊断该部分。
      【解决方案11】:

      就我而言,是 Docker 引起了问题:

      【讨论】:

      • 同样的问题是因为 Docker,是的
      • 这与Docker无关。 VirtualBox 出现问题的原因是 Hyper-V 系统。 Docker 在某些版本的 Windows 上使用 Hyper-V 系统。
      【解决方案12】:

      在 2018 年 7 月更新 Windows 10 后,我突然遇到了 Virtual Box 丢失 64 位操作系统选项导致错误的问题。

      由于 Hyper-V windows 10,virtualbox 原始模式不可用

      尽管 HYPER-V 已禁用 / 未安装...

      ,现有的 Laravel Homestead Boxes 仍因结果事件而无法启动

      修复! (这对我有用)鼓卷....

      安装Hyper-V...重新启动,再次卸载...重新启动...结束

      【讨论】:

        【解决方案13】:

        docs 一样,如果您在 Windows 上,则可以使用 hyperv 驱动程序。

        Docker for Windows - 您可以使用 docker-machine create 和 hyperv 驱动程序来创建额外的本地机器。

        【讨论】:

          【解决方案14】:

          以管理员模式运行 CMD 1.bcd编辑 2.bcdedit /set hypervisorlaunchtype off 3.重启系统

          这对我有用!!

          【讨论】:

            【解决方案15】:

            米帮助: Windows Defender 设置 >> 设备安全 >> 核心绝缘(详细信息) >> 内存完整性 >> 禁用(关闭) 系统重启!

            【讨论】:

              【解决方案16】:

              小米帮助:windows defender 设置>>设备安全>>核心绝缘(详情)>>内存完整性>>禁用(关闭)系统重启! 这个解决方案对我来说更好

              【讨论】:

                【解决方案17】:

                这将是最简单的方法。

                1) 在此处下载 Device Guard 和 Credential Guard 硬件准备工具-https://www.microsoft.com/en-us/download/details.aspx?id=53337

                2) 找到下载内容的“DG_Readiness_Tool_v3.5.ps1”文件夹路径,在启用Powershell“unrestricted”后运行以下命令。 "./DG_Readiness_Tool_v3.5.ps1 -Disable -AutoReboot"

                3) 重启机器时按 F3 确认禁用功能

                【讨论】:

                  【解决方案18】:

                  就我而言,问题出在我尝试使用 ubuntu/xenial64 的特定盒子上,我只需要切换到 centos/7,所有这些错误都消失了。

                  希望这对某人有所帮助。

                  【讨论】:

                    【解决方案19】:

                    【讨论】:

                      【解决方案20】:

                      我有完全相同的问题,并且做了和你一样的事情,但没有成功。

                      我在我的日志中发现了一个条目

                      HM: HMR3Init: Falling back to raw-mode: VT-x is not available
                      VMSetError: F:\tinderbox\win-5.2\src\VBox\VMM\VMMR3\VM.cpp(361) int __cdecl 
                      VMR3Create(unsigned int,const struct VMM2USERMETHODS *,void (__cdecl *)(struct UVM *,void *,int,const char *,unsigned int,const char *,const char *,char *),void *,int (__cdecl *)(struct UVM *,struct VM *,void *),void *,struct VM **,struct UVM **); rc=VERR_SUPDRV_NO_RAW_MODE_HYPER_V_ROOT
                      00:00:05.088846 
                      VMSetError: Raw-mode is unavailable courtesy of Hyper-V. 00:00:05.089946 
                      
                      ERROR [COM]: aRC=E_FAIL (0x80004005) aIID={872da645-4a9b-1727-bee2-5585105b9eed} aComponent={ConsoleWrap} aText={Raw-mode is unavailable courtesy of Hyper-V. (VERR_SUPDRV_NO_RAW_MODE_HYPER_V_ROOT)}, preserve=false aResultDetail=0 00:00:05.090271 Console: Machine state changed to 'PoweredOff'
                      

                      我的芯片说它有 VT-x 并且在 Bios 中已打开,但日志显示没有
                      HM:HMR3Init:回退到原始模式:VT-x 不可用 我有一台 6 个月大的联想 Yoga,配备 2.7-GHz 英特尔酷睿 i7-7500U


                      我尝试了以下方法,但对我不起作用。

                      从这个线程 https://forums.virtualbox.org/viewtopic.php?t=77120#p383348 我尝试禁用 Device Guard,但 Windows 无法关闭,所以我重新启用了它。

                      我使用了这条路径.... 在主机操作系统上,单击开始 > 运行,键入 gpedit.msc,然后单击确定。本地组策略编辑器打开。 转到本地计算机策略 > 计算机配置 > 管理模板 > 系统 > Device Guard > 打开基于虚拟化的安全性。选择禁用。

                      【讨论】:

                      • 对不起,您的回答不清楚,您找到解决方案了吗?对您有什么帮助?请说清楚。谢谢。
                      • 对不起,我只列出了一些不适合我的东西。他们为其他人工作。
                      • 您能否更改您的答案以更清楚地说明解决方案是什么?如果它不适合你也没关系,但要明确步骤。如果您愿意,可以从另一种解决方案中抽象出一个解决方案。谢谢。
                      • 和你一样,我也在这篇文章和链接中做了所有的事情,但不断收到你在上面发布的错误。不知何故,Windows 没有禁用 Hyper-V 机器,但所有属性都已正确设置为将其关闭并在重新启动后保持关闭。欢迎任何进一步的输入,您是否让它同时运行?
                      • 非常混乱的答案。
                      【解决方案21】:

                      我也有同样的问题

                      virtual box 在我的 windows 机器上运行顺利,但是当新的更新到来时 virtual 开始给我这个错误,相信我,伙计们只是用了一点 S%$& 的东西来解决它

                      在我的情况下,这个问题只需安装 Windows 扩展包就可以解决

                      【讨论】:

                      • 您好,欢迎来到 SO @EvilPrince - 如果您可以使您的答案更简洁一点,这将非常有帮助,并在您的情况下解释安装上述扩展包所需的步骤。
                      • 只需从那里的网站下载 Oracle VM Virtual Box 扩展包,然后先安装 virtual box,然后只需安装扩展包即可。所有平台都支持扩展包
                      猜你喜欢
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 2020-01-04
                      • 1970-01-01
                      • 1970-01-01
                      • 2023-02-22
                      相关资源
                      最近更新 更多