将 mac 更新到 12.0.1 monterey 后无法运行 virtualbox - 仅主机适配器出错

Posted

技术标签:

【中文标题】将 mac 更新到 12.0.1 monterey 后无法运行 virtualbox - 仅主机适配器出错【英文标题】:Cant run virtualbox after updating mac to 12.0.1 monterey - error with host only adapter 【发布时间】:2021-12-18 17:01:03 【问题描述】:

我在 mac 上使用 vagrant 运行 virtualbox 映像。一切正常,直到我更新到最新的 Mac 版本(12.0.1 Monterey)。

当我尝试使用 vagrant up 启动机器时,出现以下错误:

Command: ["hostonlyif", "create"]
Stderr: 0%...
Progress state: NS_ERROR_FAILURE
VBoxManage: error: Failed to create the host-only adapter
VBoxManage: error: VBoxNetAdpCtl: Error while adding new interface: failed to open /dev/vboxnetctl: No such file or directory
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component HostNetworkInterfaceWrap, interface IHostNetworkInterface
VBoxManage: error: Context: "RTEXITCODE handleCreate(HandlerArg *)" at line 95 of file VBoxManageHostonly.cpp

如果我进入 virtualbox(mac 应用程序)并在那里启动机器,我也会收到一个错误(只是说它无法启动机器。 如果我去的主机网络管理器部分

所以主机专用适配器似乎有问题。

在深入研究并查看其他人的问题和解决方案后,我尝试了以下方法:

    允许 oracle 从安全和隐私设置中,但是这没有出现 运行重启 virtualbox 的命令(找不到它是什么了,抱歉:/) 重新安装 virtualbox 从 virtualbox(6.1) 安装 testbuild 将 virtualbox 添加到完整磁盘权限 在 vagrantfile 的 vagrant documentation 代码中添加以下内容:
    config.vm.provider "virtualbox" do |v|
      v.gui = true
    end

每次我尝试安装 virtualbox 时都会收到一条错误消息,指出安装失败。但图标又回来了。

这是怎么回事?我该如何解决?

【问题讨论】:

【参考方案1】:

重新启动您的 PC 并运行以下命令:

sudo kextload -b org.virtualbox.kext.VBoxDrv
sudo kextload -b org.virtualbox.kext.VBoxNetFlt
sudo kextload -b org.virtualbox.kext.VBoxNetAdp
sudo kextload -b org.virtualbox.kext.VBoxUSB

之后,再次尝试vagrant up

这对我有用,并允许我绕过该错误

【讨论】:

【参考方案2】:

最终的帮助是允许 oracle 在恢复模式下通过终端

    启动mac 同时按住 command 和 r 直到看到苹果标志 转到实用程序 spctl kext-consent add VB5E2TV963 重启

这里有完整的文档:https://appuals.com/kernal-driver-not-installed-rc-1908-error-mac/

但是现在每次我想重新启动 vagrant 时,我都需要在终端中进行以下操作。 我的 vagrant installfile(6.1.28) 位于我的主文件夹中,如果对您来说不同,请更改命令中的位置

    sudo hdiutil attach VirtualBox-6.1.28-147628-OSX.dmg cd /Volumes/VirtualBox sudo installer -package VirtualBox.pkg -target /

【讨论】:

【参考方案3】:

您会找到大量答案,其中一些可能对您有用。 在尝试了一些并了解当前保存的状态是导致问题的原因后,我执行了这些简单的步骤并开始工作,而无需重新启动 VM 或 Mac。

参见图 1,如果你的路径相同,请按照我的路径删除 .vbox-prev 文件

参见图 2,打开 VM 管理器,右键单击您创建的机器,然后选择 Delete Saved State...

然后Bingo,正常启动你的机器。

尝试需要 15 秒。

[删除.vbox-prev][1]

【讨论】:

以上是关于将 mac 更新到 12.0.1 monterey 后无法运行 virtualbox - 仅主机适配器出错的主要内容,如果未能解决你的问题,请参考以下文章

MAC升级monterey wifi驱动器在哪

在 M1 Pro Monterey 12.0.1 上运行和连接到 MongoDB 时遇到问题

可可豆荚在 Mac OS Monterey 上不起作用

QT 中的 QSlider 在新的 MacOS Monterey (v12.0.1) 中行为不端。任何解决方法?

Eclipse CDT 不适用于 macOS Monterey

MacOS Monterey的快捷指令应用有什么新功能?