错误: 未能创建仅适用于主机的适配器

我正在软呢帽17机器上运行 流浪汉1.4和 虚拟盒子4.3。当我做“流浪者向上”,我得到这个错误:

Bringing machine 'default' up with 'virtualbox' provider...




[default] Clearing any previously set forwarded ports...
[default] Clearing any previously set network interfaces...
There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.


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: VBoxNetAdpCtl: ioctl failed for /dev/vboxnetctl: Inappropriate ioctl for devic
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component HostNetworkInterface, interface IHostNetworkInterface
VBoxManage: error: Context: "int handleCreate(HandlerArg*, int, int*)" at line 66 of file VBoxManageHostonly.cpp
185960 次浏览

我今天遇到了同样的问题,原因是我有另一个虚拟机在 VirtualBox 中运行。

解决方案:

  1. 打开 VirtualBox 并关闭所有正在运行的虚拟机
  2. 进入系统预置 > 安全和隐私,然后点击“允许”按钮让 Oracle (VirtualBox)加载。
  3. 重新启动 VirtualBox
sudo "/Library/Application Support/VirtualBox/LaunchDaemons/VirtualBoxStartup.sh" restart

您现在应该能够运行 vagrant upvagrant reload并配置新主机。

正如在 这个答案中提到的,最新版本的 macOS 可以阻止 VirtualBox。

解决方案:

转到 System Preferences > Security & Privacy,然后点击“允许”按钮让 Oracle (VirtualBox)加载。

(感谢 @ pazhyn@ lsimonetti@ Dave-Beauchesne的澄清)

我通过安装 VirtualBox 4.2而不是4.3修复了这个错误。我认为最新版本的流浪汉和 VB 4.3在软呢帽系统上是不兼容的。

$sudo /Library/StartupItems/VirtualBox/VirtualBox restart

我在 Mac 上运行得很好,这通常发生在我关闭电脑而不运行的时候

$vagrant suspend

对于 Mac OS X 10.9.3、 Vagrant 1.6.3和 VirtualBox 4.3.6,这个问题通过重新启动 VirtualBox 得到了解决

sudo "/Library/Application Support/VirtualBox/LaunchDaemons/VirtualBoxStartup.sh" restart

在我的例子中,我能够通过重新安装虚拟机来解决这个问题。我试图使用 Laravel 的家园,出了这个错误。重新安装有助于再次创建虚拟机所需的目录。我花了一个小时才想明白。

如果您在 Linux 上,只需运行: sudo vboxreload

这个问题似乎可以通过安装 最新版本的虚拟盒子来解决。

升级到 OS X El Captian 后我遇到了这个问题。升级到 VB 的最新版本为我解决了这个问题。如果你点击屏幕顶部的虚拟框菜单并点击检查更新,虚拟框会给你最新的链接。

我在运行 Debian 8(Jessie)、 Vagrant 1.6.5和 Virtual Box 4.3. x 时遇到了同样的问题。

对我来说,这个问题得到了解决:

sudo /etc/init.d/vboxdrv setup

我正在使用 ubuntu 14.04。我在虚拟机上安装了 Genymotion。每次我启动基因运动,我没有问题,但突然一次,它说无法加载虚拟机引擎,它没有打开。我通过日志文件,发现它不能创建一个新的主机只网络,因为它已经创建了所有可能的主机只网络。问题是它不能为新的网络分配内存。

解决方案: 进入你的虚拟框文件—— > 首选项—— > 网络

单击主机专用选项卡并删除一些主机专用网络,这样您就可以释放一些内存,下次就可以轻松创建一个新的网络了。

删除修复了我的问题。

  • CentOS Linux 发行版7.2.1511(核心)
  • VirtualBox-5.0

我在谷歌上搜索的时候发现了这个轮胎印。 错误: 未能创建仅适用于主机的适配器

我用 VirtualBox-5.0测试了一些用 Vagrant 创建的虚拟机,并在我的 Vagrantfile 设置了私有网络 Network“ private _ network”,ip: “192.168.10.2”

当调用命令 $流浪汉时,我将与 /dev/vboxnetcrl 不存在一起得到上面提到的错误。

我的 VirtualBox 版本似乎没有为我的 Linux 版本编译合适的内核模块,并且没有创建/dev/vboxnetcrl 设备。

因为我想测试虚拟机,而不是排除 VirtualBox 的故障,所以我的工作(不是解决方案)是:

 # yum remove VirtualBox-5.0
# yum install VirtualBox-4.3

在那之后,我能够用指定的主机适配器创建虚拟机。当然,在 VirtualBox-4.3下,/dev/vboxnetcrl 也在那里。

现在开始测试我的虚拟机。当我有时间的时候,我会看看是否可以让它在 VirtualBox 5.0下工作

帮助我在 Openuse 42.1上安装 VirtualBox 和 Vagrant 的是官方 RPM,而不是 Openuse 存储库。

如果你在 Linux频道:

sudo service virtualbox restart

我在 Windows 8.1、 VirtualBox 5.1.18和 Vagrant 1.9.3上遇到过这个问题。

从 VirtualBox 首选项(Network —— > Host-only Network)删除 VirtualBox 主机专用以太网适配器为我修复了这个问题,vagrant up可以继续并启动 VM。

我的解决办法是:

确保在 System32下有以下文件:

vboxnetadp.sys


vboxnetflt.sys

你可以从这里下载:

Http://www.sysfilesdownload.com/v/vboxnetfltsys.html

Http://www.sysfilesdownload.com/u/vboxnetadp.sys.html

我在 Ubuntu 16.04 LTS上运行 VirtualBox

有效的解决方案是重新安装上述 给你提到的 Virtual box:

sudo apt remove virtualbox virtualbox-5.0 virtualbox-4.*

sudo apt-get install virtualbox

我找不到我的 VirtualBox 安装文件夹,因此无法发出命令:

$sudo /Library/StartupItems/VirtualBox/VirtualBox restart

我不得不在我的机器上重新安装虚拟机。

这是下载页面: 下载页

之后 vagrant up为我工作。

我在学习如何为 Windows10设置 LaravelHomestead 时也遇到了同样的问题。本教程提供了一个用于服务器的示例 IP 地址 192.168.10.10。他们示例 IP 的问题是 如果您已经设置了一个 VirtualBox Host-Only Adapter,那么您用于流浪服务器的 IP 必须与当前适配器的 IP 地址的前三部分相同

通过运行 ipconfig(windows) ifconfig(mac/linux)并查找 VirtualBox Host-Only Adapter 的 IPv4地址,您可以检查当前的 VirtualBox Host-Only Adapter IP 地址是什么。192.168.56.1是我的。通常,如果主机 IP 是 192.168.56.1,那么来宾 IP 将是 192.168.56.101,因此不使用我使用的示例 IP 192.168.56.102任何在 192.168.56.*中的 IP,如果还没有被采用,应该可以工作.

在这个 homestead up之后,对我来说完美的工作。

DR-如果您当前的 VirtualBox Host-Only Adapter IP 是192.168.56.1,那么将您的 Vagrant 服务器 IP 设置为192.168.56.102。

MacOS 可能阻止了 VirtualBox。转到 System Preferences > Security & Privacy然后点击“允许”。

解决方案: 转到 System Preferences > Security & Privacy,然后点击“允许”按钮让 Oracle (VirtualBox)加载。

默认情况下,MacOS 可以阻止文本加载。在执行 virtualboxstartup.sh 脚本之前,必须单击“ allow”按钮。

然后跑: 就像 上面的回答一样。

(这篇文章使 MacOS 内核扩展加载更加清晰)

Windows10专业版 VirtualBox 5.2.12

在我的例子中,我必须在 VirtualBoxGUI 中编辑 Host Only Ethernet Adapter。单击“全局工具”-> “主机网络管理器”-> “选择以太网适配器”,然后单击“属性”。我的设置是自动配置的,它尝试使用的 IP 地址与我尝试使用 drupal-vm 和浪人的 IP 地址不同。我只需要改成手动,然后修正 IP 地址。我希望这能帮到别人。

我刚才也遇到了同样的问题,只需要重新安装到最新版本的 VirtualBox 就可以解决这个问题。

对于那些在 Mac OS High Sierra 上的用户来说,安装一开始可能会失败,但是你需要进入 System Preferences > Security & Policy,点击“ Allow”按钮来允许 Oracle 安装软件。

在更新到 Mojave 之后在 Mac 中出现了错误。也许你有一个旧版本的虚拟机。

更新到最近的虚拟机版本(在写这篇文章的时候是5.2)

编辑: 添加@lsimonetti 的评论。

除了升级到 Virtualbox 5.2之外,还需要 Vagrant > = 2.0.1

如果您使用 macOS High Sierra 或更高版本,您可以在以下位置找到 bash 脚本:

sudo /Library/Application\ Support/VirtualBox/LaunchDaemons/VirtualBoxStartup.sh restart

如果你得到这样的错误:

/Library/Application Support/VirtualBox/VBoxDrv.kext 加载失败-(libkern/kext)系统策略阻止加载; 检查系统/内核日志中的错误或尝试 kextutil (8)。

您可以通过 System Preferences > Security & Privacy部分和 Allow虚拟机解决这个问题。

对于 macOS Mojave,这个解决方案奏效了:

sudo "/Library/Application Support/VirtualBox/LaunchDaemons/VirtualBoxStartup.sh" restart

我在 Mac 身上遇到了这个问题。

我做了以下事情 浏览: 启动器-> Virtualbox

单击图标打开 Virtualbox

启动 Virtualbox 时,使用一旦启动就会弹出的按钮。等待终端窗口给出提示,

@ boot2docker

那就打开码头,希望能管用!

我的解决办法

系统首选项-> 系统安全隐私-> 允许 oracle.xxxx; 然后重新安装虚拟机。

我想提一下。

打开 VirtualBox 并关闭所有正在运行的虚拟机。

关闭应该是关闭电源。

如果你的虚拟机已经添加到 Linux 的 Path 中(我的是 Ubuntu) ,你可以使用命令: virtualbox restart

我来这里,和厨房线人一起工作,和流浪汉有矛盾。 在(重新)移动“ ~/. itchen”-目录之后,kitchen converge再次成功

尝试了多种解决方案,但下面的顺序为我工作。

Virtual Box: 5.2.34虚拟盒子: 5.2.34 流浪汉: 2.2.5 Mac OSX: 10.14.6

首先允许访问 Oracle 公司:

进入系统预置 > 安全和隐私,然后点击“允许”按钮让 Oracle (VirtualBox)加载。

然后通过以下命令重新启动 VBox:

sudo /Library/Application\ Support/VirtualBox/LaunchDaemons/VirtualBoxStartup.sh restart

再试试“流浪汉”。

如果您确定已经允许从 system preference使用 Oracle,并且错误仍然存在。很有可能您还没有启动 VirtualBox。确保它正在运行,然后再次运行 vagrant up

有时这可以通过给流浪汉提供箱子来解决

vagrant up --provision

升级到大苏尔之后,我也遇到了同样的问题

莱纳斯解决方案对我很有效

  1. 在系统首选项 > 安全和隐私 > 一般(这个请求是 MacOS High Sierra 的新请求)下授予 VirtualBox 权限
  2. 打开终端并运行: sudo“/Library/Application Support/VirtualBox/LaunchDaemons/ virtualboxstartup.sh”重新启动

Https://stackoverflow.com/a/47652517/6146535

最后通过下面给定的链接为我工作。

Https://www.mediacurrent.com/blog/drupal-vm-failed-create-host-only-adapter/

  • 试用时间: 2021年3月6日
  • Mac OS = 11.2.2(20D80)
  • Oracle Virtual Box = Version 6.1.18 r142142(Qt5.6.3)
~ ➤ docker-machine create --driver virtualbox Manager1


Running pre-create checks...
Creating machine...
(Manager1) Copying /Users/speedoo/.docker/machine/cache/boot2docker.iso to /Users/speedoo/.docker/machine/machines/Manager1/boot2docker.iso...
(Manager1) Creating VirtualBox VM...
(Manager1) Creating SSH key...
(Manager1) Starting the VM...
(Manager1) Check network to re-create if needed...
(Manager1) Found a new host-only adapter: "vboxnet0"
(Manager1) Waiting for an IP...
Waiting for machine to be running, this may take a few minutes...
Detecting operating system of created instance...
Waiting for SSH to be available...
Detecting the provisioner...
Provisioning with boot2docker...
Copying certs to the local machine directory...
Copying certs to the remote machine...
Setting Docker configuration on the remote daemon...
Checking connection to Docker...
Docker is up and running!
To see how to connect your Docker Client to the Docker Engine running on this virtual machine, run: docker-machine env Manager1
~ ➤
~ ➤


~ ➤ docker-machine ls


NAME       ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER      ERRORS


Manager1   -        virtualbox   Running   tcp://192.168.99.100:2376           v19.03.12


~ ➤

在我的例子中,为了解决这个错误,我必须做以下事情:

Totophe 的 结合(re) 安装最新的 VM 版本(https://www.virtualbox.org/wiki/Downloads)(感谢 Jacobappleton & user1718159)

步骤:

  • 首先(重新)安装最新的 VirtualBox;
  • 在终端中运行 sudo "/Library/Application Support/VirtualBox/LaunchDaemons/VirtualBoxStartup.sh" restart(不确定是否需要这样做才能让系统首选项显示为 allow/disallow 选项) ;
  • 允许安全和隐私
  • 重启你的机器
  • 再次运行 sudo "/Library/Application Support/VirtualBox/LaunchDaemons/VirtualBoxStartup.sh" restart

准备再次运行 vagrant up

我在 Arch 有个问题,我是这么解决的。

我需要以下所有的包裹:

➜  ~ pacman -Ss virtualbox | grep installed
extra/linux-zen 5.12.14.zen1-1 [installed]
community/virtualbox 6.1.22-3 [installed]
community/virtualbox-ext-vnc 6.1.22-3 [installed]
community/virtualbox-guest-iso 6.1.22-1 [installed]
community/virtualbox-guest-utils 6.1.22-3 [installed]
community/virtualbox-host-dkms 6.1.22-3 [installed]
community/virtualbox-sdk 6.1.22-3 [installed]
chaotic-aur/linux-tkg-muqss 5.12.15-178 [installed]
chaotic-aur/virtualbox-ext-oracle 6.1.22-1 [installed]
chaotic-aur/virtualbox-meta 2-1 [installed]

我的 AMD 主板(GigabyteX570AORUS Master)默认将 AMD 安全虚拟机(SVM)设置为“禁用”。我在 BIOS 中将其更改为“启用”。

重新启动和运行:

vagrant up

最后工作没有任何问题。只是一定要有一个正确配置的流浪汉文件。

如果在执行了@totophe 和 macOS 之后仍然不能工作,只需重新启动你的 mac。然后打开终端和 vagrant up

这通常发生在每次 MacOS 更新之后。

我在升级到 OSX Monterey 的时候也遇到过类似的问题。

解决方案:

  1. 安装 VirtualBox 扩展(下载)
  2. 接受 VirtualBox 安全性和隐私/隐私/输入监控

enter image description here

VirtualBox 也可以拥有或失去访问权限,也请检查这一点

enter image description here