无法创建仅主机适配器
Failed to create the host-only adapter
我的系统上 vagrant up 有问题。我有错误,你可以在下面看到。我已经尝试重新安装 VBox、Vagrant、关闭防火墙、检查 VBox 网络驱动程序并重新启动主机系统,但它不工作。
感谢大家的帮助。
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: E_FAIL
VBoxManage.exe: error: Failed to create the host-only adapter
VBoxManage.exe: error: SetupDiCallClassInstaller (DIF_INSTALLDEVICE) failed
(0x00000002)
VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component
HostNetworkInterfaceWrap, interface IHostNetworkInterface
VBoxManage.exe: error: Context: "enum RTEXITCODE __cdeclhandleCreate(struct
HandlerArg *)" at line 94 of file VBoxManageHostonly.cpp
VBox 版本
5.2.22
Vagrant 版本
2.2.0
主机操作系统
Win7 x64
来宾操作系统
Ubuntu-16.04.5-桌面-amd64
Vagrantfile
dir = File.dirname(File.expand_path(__FILE__))
require 'yaml'
require "#{dir}/puphpet/ruby/deep_merge.rb"
require "#{dir}/puphpet/ruby/to_bool.rb"
configValues = YAML.load_file("#{dir}/puphpet/config.yaml")
provider = ENV['VAGRANT_DEFAULT_PROVIDER'] ? ENV['VAGRANT_DEFAULT_PROVIDER'] : 'local'
if File.file?("#{dir}/puphpet/config-#{provider}.yaml")
custom = YAML.load_file("#{dir}/puphpet/config-#{provider}.yaml")
configValues.deep_merge!(custom)
end
if File.file?("#{dir}/puphpet/config-custom.yaml")
custom = YAML.load_file("#{dir}/puphpet/config-custom.yaml")
configValues.deep_merge!(custom)
end
data = configValues['vagrantfile']
Vagrant.require_version '>= 1.8.1'
Vagrant.configure('2') do |config|
eval File.read("#{dir}/puphpet/vagrant/Vagrantfile-#{data['target']}")
end
检查这个 link:
如果这不起作用,那么评论 20 这建议 https://www.virtualbox.org/ticket/14545#comment:20
正在执行以下操作:
I was able to work around this problem for me with the following steps:
Open the VirtualBox Manager GUI.
Go to File -> Preferences -> Network -> Host-only Networks
Delete all entries in that list
Run vagrant up again
我在主机上做了 vagrant up
!
经过多次尝试,我重新安装了 Windows。需要虚拟机主机驱动程序(Windows 网络中的 VirtualBox Host-Only 以太网适配器)仅安装在 "clean" 系统上,这对我来说非常奇怪。
Vagrant 还需要 Windows PowerShell 版本早于 3,但 Win7 默认使用 2。您需要更新 Windows Net Framework 以便在 Win7 上安装 3 和旧版本。
祝你好运!
过去 2 天我都被这个问题弄疯了。终于找到解决办法了。
1.The 杀毒软件导致了这个问题
2.You 需要在您的 windows 系统上禁用防病毒服务(您需要管理员权限或从您公司的 IT 人员那里完成)
3.Reinstall Docker 工具箱并启动它(管理员模式)
这有效
我发现所有其他解决方案都不起作用,
直到我发现这个 post:
Laravel Vagrant Up SSH Problems
在 YAML 文件的结束标记之前添加下一个代码就可以了
config.vm.provider "virtualbox" do |vb|
vb.customize ["modifyvm", :id, "--cableconnected1", "on"]
end
这个帖子已经有 3 年历史了,但及时向前,我也遇到了与 windows 10 类似的问题。让我告诉你我是如何修复它的。
打开虚拟盒子->文件->主机网络管理器
一旦您选择 select 选项,系统就会打开一个框,其中包含供您使用的适配器 enable/disable。
默认情况下,适配器 2 对我来说是禁用的,一旦我启用它,我就可以 运行 vagrant up 没有问题。
我的系统上 vagrant up 有问题。我有错误,你可以在下面看到。我已经尝试重新安装 VBox、Vagrant、关闭防火墙、检查 VBox 网络驱动程序并重新启动主机系统,但它不工作。
感谢大家的帮助。
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: E_FAIL
VBoxManage.exe: error: Failed to create the host-only adapter
VBoxManage.exe: error: SetupDiCallClassInstaller (DIF_INSTALLDEVICE) failed
(0x00000002)
VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component
HostNetworkInterfaceWrap, interface IHostNetworkInterface
VBoxManage.exe: error: Context: "enum RTEXITCODE __cdeclhandleCreate(struct
HandlerArg *)" at line 94 of file VBoxManageHostonly.cpp
VBox 版本 5.2.22
Vagrant 版本 2.2.0
主机操作系统 Win7 x64
来宾操作系统 Ubuntu-16.04.5-桌面-amd64
Vagrantfile
dir = File.dirname(File.expand_path(__FILE__))
require 'yaml'
require "#{dir}/puphpet/ruby/deep_merge.rb"
require "#{dir}/puphpet/ruby/to_bool.rb"
configValues = YAML.load_file("#{dir}/puphpet/config.yaml")
provider = ENV['VAGRANT_DEFAULT_PROVIDER'] ? ENV['VAGRANT_DEFAULT_PROVIDER'] : 'local'
if File.file?("#{dir}/puphpet/config-#{provider}.yaml")
custom = YAML.load_file("#{dir}/puphpet/config-#{provider}.yaml")
configValues.deep_merge!(custom)
end
if File.file?("#{dir}/puphpet/config-custom.yaml")
custom = YAML.load_file("#{dir}/puphpet/config-custom.yaml")
configValues.deep_merge!(custom)
end
data = configValues['vagrantfile']
Vagrant.require_version '>= 1.8.1'
Vagrant.configure('2') do |config|
eval File.read("#{dir}/puphpet/vagrant/Vagrantfile-#{data['target']}")
end
检查这个 link:
如果这不起作用,那么评论 20 这建议 https://www.virtualbox.org/ticket/14545#comment:20
正在执行以下操作:
I was able to work around this problem for me with the following steps:
Open the VirtualBox Manager GUI.
Go to File -> Preferences -> Network -> Host-only Networks
Delete all entries in that list
Run vagrant up again
我在主机上做了 vagrant up
!
经过多次尝试,我重新安装了 Windows。需要虚拟机主机驱动程序(Windows 网络中的 VirtualBox Host-Only 以太网适配器)仅安装在 "clean" 系统上,这对我来说非常奇怪。
Vagrant 还需要 Windows PowerShell 版本早于 3,但 Win7 默认使用 2。您需要更新 Windows Net Framework 以便在 Win7 上安装 3 和旧版本。
祝你好运!
过去 2 天我都被这个问题弄疯了。终于找到解决办法了。
1.The 杀毒软件导致了这个问题
2.You 需要在您的 windows 系统上禁用防病毒服务(您需要管理员权限或从您公司的 IT 人员那里完成)
3.Reinstall Docker 工具箱并启动它(管理员模式) 这有效
我发现所有其他解决方案都不起作用, 直到我发现这个 post: Laravel Vagrant Up SSH Problems
在 YAML 文件的结束标记之前添加下一个代码就可以了
config.vm.provider "virtualbox" do |vb|
vb.customize ["modifyvm", :id, "--cableconnected1", "on"]
end
这个帖子已经有 3 年历史了,但及时向前,我也遇到了与 windows 10 类似的问题。让我告诉你我是如何修复它的。
打开虚拟盒子->文件->主机网络管理器
一旦您选择 select 选项,系统就会打开一个框,其中包含供您使用的适配器 enable/disable。
默认情况下,适配器 2 对我来说是禁用的,一旦我启用它,我就可以 运行 vagrant up 没有问题。