VBoxManage: erro: falha ao criar o adaptador somente host

124

Estou executando o vagrant 1.4 e o virtual box 4.3 na máquina fedora 17. Quando faço "vagrant up", recebo este erro:

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
Adi
fonte
você está rodando vagrant no fedora ou esse é o seu sistema operacional vagrant box?
Jeff Sisson
Eu tenho o mesmo problema e executando vagrant no OS X, é esse o problema da caixa virtual?
Yuan He
@adi você poderia validar a resposta certa? Tks
totophe

Respostas:

171

Eu tive o mesmo problema hoje. O motivo foi que eu tinha outra VM em execução no VirtualBox.

Solução:

  1. Abra o VirtualBox e desligue todas as VMs em execução
  2. Reinicie o VirtualBox
sudo "/Library/Application Support/VirtualBox/LaunchDaemons/VirtualBoxStartup.sh" restart

Agora você deve poder executar vagrant upou vagrant reloadter seu novo host configurado.

Conforme mencionado nesta resposta , as versões recentes do macOS podem bloquear o VirtualBox.

Solução:

Vá para System Preferences > Security & PrivacyEm seguida, clique no botão "Permitir" para permitir o carregamento do Oracle (VirtualBox).

(obrigado a @pazhyn & @lsimonetti pelos esclarecimentos)

totophe
fonte
2
Confirmar isso funciona no meu Mac. Desligar outras VMs não é suficiente, mas reiniciar o VB funciona.
Steve Bennett
1
Também funcionou para mim, a interface do VirtualBox não mostrou VMs, mas a reinicialização resolveu o problema. Talvez a parada vagabunda não tenha terminado com sucesso da última vez.
Erich
2
Esta resposta assume, eu acho, que o VirtualBox está nos seus StartupItems. Caso contrário, consulte a resposta de @ pazhyn abaixo, que parece ser mais geral e funcionou para mim.
precisa saber é o seguinte
Não funciona, o virtualbox por padrão não é instalado neste local. Sei que a minha é uma instalação padrão e não está localizada em StartupItems. Por favor, veja a resposta @pazhyn abaixo. Obrigado!
amateur barista
1
Tinha que fazer isso e, em seguida, clique em "Permitir" nas preferências do sistema, conforme mencionado por algumas outras respostas. Sem isso, o "Permitir" nem apareceu.
trainoasis
60

Para Mac OS X 10.9.3 e Vagrant 1.6.3 e VirtualBox 4.3.6, esse problema foi corrigido com a reinicialização do VirtualBox

sudo "/Library/Application Support/VirtualBox/LaunchDaemons/VirtualBoxStartup.sh" restart
Anatolii Pazhyn
fonte
1
Funcionou perfeitamente! Obrigado
Ashwin Balamohan
Funciona para mim, VirtualBox 4.3.18, OS X 10.9.3. Obrigado!
amateur barista
1
Para qualquer um que tenha a mesma pergunta: Mac OS 10.13 + vagrant 2.2.0 + VirtualBox 5.2.20 isso funcionou perfeitamente para mim. Muito obrigado!
Bahman.A
Trabalhou para mim. OS X com VirtualBox 6.0 e Vagrant 2.2.7
Redas Jarušaitis 13/03
Sim. Destruir a VM anterior não fez isso por mim.
Dave Hodgkinson
42

TL; DR MacOS provavelmente está bloqueando o VirtualBox. Vá para System Preferences > Security & PrivacyEm seguida, clique no botão "Permitir".

Solução: Vá para System Preferences > Security & PrivacyEm seguida, clique no botão "Permitir" para permitir o carregamento do Oracle (VirtualBox).

O MacOS, por padrão, pode bloquear o carregamento de kexts. Você deve clicar no botão "permitir" antes de executar o script VirtualBoxStartup.sh.

Em seguida, execute: sudo "/Library/Application Support/VirtualBox/LaunchDaemons/VirtualBoxStartup.sh" restartcomo a resposta acima .

( Este artigo fornece mais clareza ao carregamento da extensão do kernel do MacOS)

lsimonetti
fonte
1
Trabalhou para mim! Obrigado
Srdjan Marjanovic
MacOS by default can block kexts from loading. You must click the "allow" button before executing the VirtualBoxStartup.sh script. Esse foi o problema para mim! Obrigado!
Daneczech 16/10/19
14

Esse problema parece ser corrigido instalando a versão mais recente do Virtual Box .

user1718159
fonte
1
Meu caso é o Vagrant 1.7.4 + Virtualbox 5.0 + Windows 10 build 10240. A versão 5.01 corrige o problema.
DevAnimal
10

Eu tive esse problema depois de atualizar para o OS X El Captian. A atualização para a versão mais recente do VB resolveu o problema para mim. A caixa virtual fornecerá o link mais recente se você for ao menu da caixa virtual na parte superior da tela e clicar em verificar atualizações.

espradley
fonte
10

Obteve o erro no Mac após a atualização para o Mojave. Provavelmente você tem uma versão mais antiga da caixa virtual.

Atualize para uma versão recente do virtualbox. (5.2 no momento da publicação deste post)

Edit: adicionando o comentário de @ lsimonetti.

Além dessa atualização para o Virtualbox 5.2, você precisa do Vagrant> = 2.0.1

Shobi
fonte
1
Além disso upgrade para Virtualbox 5.2, você precisa Vagrant> = 2.0.1 github.com/hashicorp/vagrant/blob/v2.1.5/...
lsimonetti
8

Se você estiver no Linux, basta executar: sudo vboxreload

Nico
fonte
13
O vboxreload não existe. Vbox
jaguililla
7

Estou executando o Oracle VM Virtualbox no Ubuntu 16.04 LTS .

A solução que funcionou foi reinstalar o virtualbox, conforme mencionado aqui :

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

sudo apt-get install virtualbox

Não consegui encontrar minha pasta de instalação do VirtualBox, pois não foi possível emitir o comando:

$sudo /Library/StartupItems/VirtualBox/VirtualBox restart

Jonathan
fonte
Meu env local parou de responder. Não foi possível ficar vagabundo. remover e instalar o vbox corrigiu o problema. Graças
Nick DuBois
6

Eu tive que reinstalar o Virtual Box na minha máquina.

Aqui está a página de downloads: Página de downloads

Então vagrant uptrabalhou para mim depois.

David Katz
fonte
3

No meu caso, consegui resolver esse problema reinstalando a caixa virtual. Eu estava tentando usar a propriedade do laravel e estava tendo esse erro. A reinstalação ajuda a criar os diretórios necessários para a caixa virtual novamente. Levei uma hora para descobrir.

Fahad
fonte
3

Estou executando o Debian 8 (Jessie), o Vagrant 1.6.5 e o Virtual Box 4.3.x com o mesmo problema.

Para mim, foi corrigida a execução:

sudo /etc/init.d/vboxdrv setup
jaguililla
fonte
2

Estou usando o ubuntu 14.04. Eu tenho o genymotion instalado no virtualbox. Toda vez que inicio o genymotion, não tenho nenhum problema, mas de repente uma vez ele diz que é incapaz de carregar o mecanismo de caixa virtual e não abre. Examinei o arquivo de log e descobri que não era possível criar uma nova rede somente de host porque ele já havia criado todas as redes possíveis apenas de host. E o problema é que ele não pode alocar memória para uma nova rede.

Correção: vá para sua caixa virtual Arquivo -> Preferências -> Rede

Clique na guia somente host e exclua algumas das redes somente host para liberar memória e, da próxima vez, uma nova rede poderá ser criada facilmente.

A exclusão corrigiu meu problema.

Srinivasan
fonte
Obrigado por isso. Eu tive o mesmo problema.
Tihomir Meščić
Obrigado por isso. Eu estava usando o Virtual Box no Windows e tinha exatamente o mesmo problema. Sua dica de verificar as preferências da rede me ajudou a resolver esse problema.
User1501382
1

Corrigi esse erro instalando o VirtualBox 4.2 em vez de 4.3. Eu acho que a versão mais recente do vagrant e do VB 4.3 são incompatíveis em um sistema fedora.

Adi
fonte
1
$sudo /Library/StartupItems/VirtualBox/VirtualBox restart

Funcionou muito bem para mim no Mac. Isso normalmente acontece quando eu desligo o computador sem executar

$vagrant suspend
NateShumate
fonte
1
  • Versão do CentOS Linux 7.2.1511 (Core)
  • VirtualBox-5.0

Me deparei com esse passo ao pesquisar no Google por ... VBoxManage: erro: falha ao criar o adaptador somente para host

Eu estava usando o VirtualBox-5.0 para testar algumas máquinas virtuais criadas com o Vagrant e definindo redes privadas no meu Vagrantfile web.vm.network "private_network", ip: "192.168.10.2"

Ao evocar o comando $ vagrant up, eu obteria o erro mencionado acima, juntamente com / dev / vboxnetcrl, não existe .

Parece que minha versão do VirtualBox não possui o módulo do kernel adequado compilado para a minha versão do Linux e o dispositivo / dev / vboxnetcrl não é criado.

Como eu queria testar a máquina virtual e não solucionar problemas do VirtualBox, minha solução (não uma solução) foi:

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

Depois disso, consegui criar as máquinas virtuais com adaptadores de host especificados. E, é claro, no VirtualBox-4.3, o / dev / vboxnetcrl estava lá.

Agora, testando minhas VMs. E quando eu tiver tempo, vou ver se consigo fazê-lo funcionar no VirtualBox 5.0

Antonio D
fonte
1

Se você estiver no Linux :

sudo service virtualbox restart
Diogo Gomes
fonte
2
serviço não encontrado :( embora a caixa virtual esteja instalada.
Rubinum
1

Windows 10 Pro VirtualBox 5.2.12

No meu caso, eu tive que editar o Host Ethernet Adapter na GUI do VirtualBox. Clique em Ferramentas Globais -> Host Network Manager -> Selecione o adaptador Ethernet e clique em Propriedades. O meu foi configurado para configurar automaticamente, e o endereço IP que ele estava tentando usar era diferente do que eu estava tentando usar com drupal-vm e vagrant. Eu apenas tive que mudar isso para manual e corrigir o endereço IP. Espero que isto ajude alguém.

John Erhardt
fonte
1

Para o macOS Mojave, esta solução funcionou:

sudo "/Library/Application Support/VirtualBox/LaunchDaemons/VirtualBoxStartup.sh" restart
Milan Manwar
fonte
1

Eu enfrentei esse problema no mac.

Eu fiz o seguinte Ir para: Iniciador-> Virtualbox

Clique no ícone para abrir o Virtualbox

Inicie o Virtualbox com o botão que aparece quando o Virtualbox é iniciado. Aguarde até a janela do terminal exibir o prompt,

docker @ boot2docker

Em seguida, tente abrir a janela de encaixe. Espero que funcione!

Ankit Marothi
fonte
0

O que me ajudou no Opensuse 42.1 é instalar o VirtualBox e o Vagrant a partir dos RPMs oficiais, em vez dos repositórios Opensuse.

Cmyker
fonte
0

Encontrei esse problema no Windows 8.1, VirtualBox 5.1.18 e Vagrant 1.9.3.

A exclusão do adaptador Ethernet somente para hosts do VirtualBox das Preferências do VirtualBox (Rede -> redes somente para hosts) corrigiu isso para mim e vagrant uppoderia continuar e iniciar a VM.

HenricF
fonte
0

Eu tive o mesmo problema ao seguir um tutorial sobre como configurar o Laravel Homestead para Windows 10. O tutorial fornece um endereço IP de exemplo 192.168.10.10para usar no servidor. O problema com o exemplo de IP é que, se você já possui um adaptador de host virtual do VirtualBox configurado, o IP usado para o servidor vagrant deve ter as mesmas três primeiras partes do endereço IP do seu adaptador atual .

Você pode verificar qual é o seu endereço IP atual do Adaptador Somente para Host do Virtualbox executando ipconfig(windows) ifconfig(mac / linux) e procurando o endereço IPv4 do Adaptador Somente para Host do VirtualBox. 192.168.56.1era meu. Normalmente, se o IP do host for 192.168.56.1, o IP do convidado o será 192.168.56.101, em vez de usar o IP de exemplo que eu usei 192.168.56.102. Qualquer IP que esteja dentro do 192.168.56.*que ainda não foi obtido deve funcionar .

Depois disso homestead upfuncionou perfeitamente para mim.

TL; DR - Se o seu IP atual do Adaptador Somente para Host do VirtualBox for 192.168.56.1, faça o IP do servidor Vagrant 192.168.56.102.

omikes
fonte
0

Eu tinha o mesmo problema agora e foi resolvido simplesmente reinstalando a versão mais recente do VirtualBox.

Para aqueles no Mac OS High Sierra - a instalação pode falhar no início, mas você precisa ir em Preferências do Sistema> Segurança e Política e clicar no botão "Permitir" para permitir que a Oracle instale o software.

Václav Zeman
fonte
0

Se você usa o macOS High Sierra ou a versão superior, pode encontrar o script bash no local:

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

Então, se você recebeu esse tipo de erro:

/ Library / Application Support / VirtualBox / VBoxDrv.kext falhou ao carregar - a política do sistema (libkern / kext) impede o carregamento; verifique se há erros nos logs do sistema / kernel ou tente o kextutil (8).

Você pode resolvê-lo através da System Preferences > Security & Privacyseção e Allowdo VirtualBox.

Mesuti
fonte
0

Minha solução

Preferências do Sistema -> Privacidade de Segurança do Sistema -> Permitir oracle.xxxx; depois reinstalando o virtualBox.

jerry xu
fonte
0

Eu quero mencionar isso.

Abra o VirtualBox e desligue todas as VMs em execução.

O desligamento deve estar desligado.

E se sua caixa virtual foi adicionada no caminho no linux (a minha é o Ubuntu). Você pode apenas usar o comando: virtualbox restart

Newt
fonte
0

Tente esse:

sudo modprobe vboxnetadp

sudo modprobe vboxnetflt

sudo modprobe vboxdrv

andremtsilva
fonte
Duvido que isso ajude, ou até funcione. Para me convencer do contrário, explique como isso funciona e por que deve ajudar.
Yunnosch 13/03
Instalei o virtualbox em um kernel diferente do que tenho agora (4.19 e agora 5.4). Para evitar a atualização de todo o sistema, usei essa solução alternativa para ativar uma interface vboxnet0 já existente. Funcionou e ainda funciona ao iniciar o virtualbox.
andremtsilva 14/03
Agora vi que este post é sobre Mac OS e não sobre Linux. Me desculpe por isso.
andremtsilva 14/03
A questão é que essa é uma resposta apenas inexplicável do código, que sofre com a falta de percepção e utilidade reais. Seu comentário melhora um pouco as coisas, mas deve ser editado na própria resposta. E ainda não é realmente uma explicação. Gostaria de frases como "... porque ....", "... para ...", "..., o que indica ....". Além disso, alguns antecedentes como "Como está descrito na documentação (link) this ....", "... e, portanto, resolvem o problema conforme descrito pelo OP".
Yunnosch
0

Eu vim aqui, trabalhando com cozinha-CI e tendo problemas com vagrant. Depois de (re) mover o diretório "~ / .kitchen", o processo kitchen convergefoi bem-sucedido novamente

eli
fonte
0

Tentei várias soluções, mas a sequência abaixo funciona para mim.

Caixa virtual: 5.2.34 Vagrant: 2.2.5 Mac OSX: 10.14.6

Primeiro permita o acesso ao oracle inc:

Vá para Preferências do sistema> Segurança e privacidade. Em seguida, pressione o botão "Permitir" para permitir o carregamento do Oracle (VirtualBox).

Em seguida, reinicie o VBox com este comando:

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

Agora tente o Vagrant novamente.

c.sankhala
fonte