VBoxManage:错误:无法创建仅为主机适配器

问题描述 投票:101回答:23

我在Fedora 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
virtual-machine virtualbox development-environment vagrant
23个回答
132
投票

今天我有同样的问题。原因是我在VirtualBox的另一个VM运行。

  1. 打开VirtualBox和关闭每台虚拟机运行
  2. 重新启动VirtualBox的

在Mac:

sudo /Library/StartupItems/VirtualBox/VirtualBox restart

编辑:上一页解决方案假定VirtualBox的启动与系统,而以下是更通用的:

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

(韩国社交协会@pazhyn)

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


3
投票

就我而言,我能够通过重新安装虚拟盒来解决这个问题。我试图用laravel的宅基地,并有此错误。重新安装有助于创建所需的虚拟框中再次目录。我花了一个小时搞清楚。


3
投票

我运行Debian 8(杰西),流浪1.6.5和虚拟盒的4.3.x同样的问题。

对我来说,得到了固定的执行:

sudo /etc/init.d/vboxdrv setup

2
投票

我使用Ubuntu 14.04。我已经genymotion安装VirtualBox上。每次我开始genymotion我没有问题,但突然有一段时间,说无法加载VirtualBox虚拟机,它没有开。我在日志文件中去了,发现了,因为它已经创建的所有可能的主机只是网络中,不能创建一个新的主机唯一的网络。而问题是,它不能为新的网络分配内存。

修复:去你的虚拟箱文件 - >首选项 - >网络

点击仅为主机标签,只是删除了一些只有主机的网络,这样你会得到一些释放内存和接下来的时间,可以很容易地创建一个新的网络。

删除固定我的问题。


1
投票

我通过安装VirtualBox的4.2,而不是4.3修正了这个错误。我认为,流浪汉,VB 4.3的最新版本是Fedora系统不兼容。


1
投票
$sudo /Library/StartupItems/VirtualBox/VirtualBox restart

在Mac上为我伟大的工作。这通常发生在我关闭我的电脑不运行

$vagrant suspend

1
投票
  • CentOS的Linux版本1511年2月7日(核心)
  • VirtualBox的-5.0

我碰到这种胎面而来到谷歌搜索的... VBoxManage:错误:无法创建仅为主机适配器

我用VirtualBox的-5.0测试与流浪者创建了一些虚拟机,并设置在我Vagrantfile web.vm.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下工作


1
投票

如果你是在Linux上:

sudo service virtualbox restart

1
投票

视窗10 Pro的VirtualBox的5.2.12

在我而言,我不得不编辑主机只有以太网适配器在VirtualBox的GUI。单击全局工具 - >主机网络管理器 - >选择以太网适配器,然后单击属性。煤矿被设置为自动配置,并尝试使用该IP地址比我试图使用Drupal-VM和无业游民使用不同。我不得不更改为手动和纠正IP地址。我希望这可以帮助别人。


0
投票

什么帮助我在openSUSE 42.1是从官方的RPM,而不是从openSUSE的仓库安装VirtualBox和流浪汉。


0
投票

我遇到了在Windows 8.1,VirtualBox的5.1.18和1.9.3流浪汉这个问题。

删除VirtualBox的主机,只有从VirtualBox的首以太网适配器(网络 - >主机专用网络)解决了这个问题对我来说,和vagrant up可以继续并启动虚拟机。


52
投票

对于Mac OS X 10.9.3和流浪1.6.3和4.3.6的VirtualBox已修复此问题与重新启动VirtualBox的

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

0
投票

我的解决方案:

请确保您有System32下下的下列文件:

vboxnetadp.sys

vboxnetflt.sys

你可以从这里下载:

http://www.sysfilesdownload.com/V/VBoxNetFltsys.html

http://www.sysfilesdownload.com/U/VBoxNetAdp.sys.html


0
投票

而在建立Laravel家园为Windows 10本教程提供了一个示例IP地址192.168.10.10使用服务器下面的教程我有同样的问题。他们的例子IP的问题是,如果你已经有了一个VirtualBox的主机,只有适配器设置,你用你的流浪汉服务器的IP必须在当前适配器的IP地址相同的前三个部分。

您可以查看您当前的VirtualBox主机,只有适配器的IP地址是通过运行ipconfig(窗口)ifconfig(MAC / Linux的),并寻找VirtualBox主机,仅需转换连接的IPv4地址是什么。 192.168.56.1是我的。通常,如果该主机的IP 192.168.56.1则guest IP会192.168.56.101因此而不是使用我用192.168.56.102的例子IP的。任何IP那是不是已经采取了应该工作192.168.56.*内。

在此之后homestead up完全为我工作。

TL; DR - 如果您当前的VirtualBox仅主机适配器的IP是192.168.56.1,让你流浪的服务器IP 192.168.56.102。


0
投票

刚才我有同样的问题,这是通过简单地重新安装到VirtualBox的最新版本解决。

对于那些在Mac OS海伊谢拉 - 安装可能会失败在第一,但你需要去系统偏好设置>安全和政策,并点击“允许”按钮,允许Oracle软件的安装。


0
投票

如果你使用的MacOS海伊谢拉或上版本,你可以找到在该位置的bash脚本:

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

所以,如果你有这样那样的错误:

/库/ Application Support / VirtualBox虚拟/ VBoxDrv.kext加载失败 - (的libkern / KEXT)系统策略阻止加载;检查系统/内核日志是否存在错误或尝试kextutil(8)。

您可以通过System Preferences > Security & Privacy部分解决它,Allow VirtualBox的。


0
投票

适用于MacOS莫哈韦,此解决方案的工作:

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

33
投票

TL; DR的MacOS可能是阻塞的VirtualBox。转到System Preferences > Security & Privacy然后点击“允许”。

解决方案:登录然后System Preferences > Security & Privacy点击“允许”按钮,让甲骨文(VirtualBox的)负载。

默认的MacOS可以阻止加载kext文件。执行VirtualBoxStartup.sh脚本之前,您必须点击“允许”按钮。

然后运行:sudo "/Library/Application Support/VirtualBox/LaunchDaemons/VirtualBoxStartup.sh" restartanswer above

This article提供更清晰到MacOS的内核扩展加载)


14
投票

这个问题似乎是由安装latest version of Virtual Box固定。


10
投票

我升级到OS X厄尔尼诺上尉好后出现这个问题。升级到VB的最新版本解决了这个问题对我来说。如果你去VirtualBox的菜单在屏幕的顶部,点击检查更新虚拟框将向您提供最新的链接。


10
投票

更新莫哈韦后得到了在Mac上的错误。也许你有虚框的旧版本。

更新到最新版本的VirtualBox。 (5.2在写这篇文章的时候)

编辑:添加@ lsimonetti的评论。

除此之外升级到VirtualBox的5.2,则需要流浪> = 2.0.1


7
投票

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


7
投票

我在Ubuntu 16.04 LTS上运行的Oracle VM VirtualBox。

奏效的解决方案是重新安装VirtualBox中提到here

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

sudo apt-get install virtualbox

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

$sudo /Library/StartupItems/VirtualBox/VirtualBox restart


6
投票

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

这里的下载页面:Downloads Page

然后vagrant up后为我工作。

© www.soinside.com 2019 - 2024. All rights reserved.