VBoxManage: помилка: не вдалося створити адаптер, призначений лише для хоста


124

Я працюю бродячим 1.4 та віртуальним вікном 4.3 на машині fedora 17. Коли я роблю "бродягу", я отримую цю помилку:

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

ти працюєш бродячим від Fedora чи це твій візирний ящик?
Джефф Сіссон

У мене ж проблема і запущена робота на OS X, це проблема віртуального вікна?
Юань Він

@adi ти міг би підтвердити правильну відповідь? Tks
totophe

Відповіді:


171

У мене була така ж проблема і сьогодні. Причиною стало те, що у мене був ще один VM, який працює у VirtualBox.

Рішення:

  1. Відкрийте VirtualBox і вимкніть кожен запущений VM
  2. Перезавантажте VirtualBox
sudo "/Library/Application Support/VirtualBox/LaunchDaemons/VirtualBoxStartup.sh" restart

Тепер ви маєте змогу запустити vagrant upабо vagrant reloadналаштувати новий хост.

Як згадується у цій відповіді , останні версії macOS можуть блокувати VirtualBox.

Рішення:

Перейдіть до. System Preferences > Security & PrivacyПотім натисніть кнопку "Дозволити", щоб дозволити завантаження Oracle (VirtualBox).

(спасибі @pazhyn & @lsimonetti за роз'яснення)


2
Підтвердження цього працює на моєму Mac. Відключення інших віртуальних машин недостатньо, але перезапуск VB працює.
Стів Беннетт

1
Також працював для мене, інтерфейс VirtualBox не показав VM, але перезапуск вирішив проблему. Можливо, бродячі зупинки не закінчились успішно востаннє.
Еріх

2
Ця відповідь передбачає, що VirtualBox є у ваших StartupItems. Якщо це не так, дивіться відповідь @ pazhyn нижче, яка, здається, є більш загальною для мене.
jamesplease

Не працює, virtualbox за замовчуванням не встановлюється в цьому місці. Я знаю, що моє встановлення за замовчуванням і не знаходиться в StartupItems. Будь ласка, дивіться відповідь @pazhyn нижче. Дякую!
любительська бариста

1
Для цього слід було натиснути "Дозволити" в системних налаштуваннях, як зазначено в деяких інших відповідях. Без цього навіть "Дозволити" не з’явилося.
траїноз

60

Для Mac OS X 10.9.3 та Vagrant 1.6.3 та VirtualBox 4.3.6 ця проблема була усунена при перезапуску VirtualBox

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

1
Працювали чудово! Спасибі
Ешвін Баламохан

Для мене працює, VirtualBox 4.3.18, OS X 10.9.3. Дякую!
любительська бариста

1
Для тих, хто має таке ж питання щодо: Mac OS 10.13 + vagrant 2.2.0 + VirtualBox 5.2.20, це працювало для мене ідеально. Дуже дякую!
Бахман.А

Працювали для мене. OS X з VirtualBox 6.0 та Vagrant 2.2.7
Redas Jarušaitis

Так. Орієнтування на попередній VM не зробив це для мене.
Дейв Ходжкінсон

42

TL; DR MacOS, ймовірно, блокує VirtualBox. Перейдіть до System Preferences > Security & PrivacyДалі натисніть "Дозволити".

Рішення: Перейдіть до. System Preferences > Security & PrivacyПотім натисніть кнопку "Дозволити", щоб дозволити завантаження Oracle (VirtualBox).

MacOS за замовчуванням може блокувати завантаження кекстів. Ви повинні натиснути кнопку "дозволити" перед виконанням сценарію VirtualBoxStartup.sh.

Потім запустіть: sudo "/Library/Application Support/VirtualBox/LaunchDaemons/VirtualBoxStartup.sh" restartяк відповідь вище .

( Ця стаття забезпечує більш чіткість завантаження розширення ядра MacOS)


1
Працювали для мене! Спасибі
Серджан Мар’янович

MacOS by default can block kexts from loading. You must click the "allow" button before executing the VirtualBoxStartup.sh script. Це було для мене питання! Дякую!
daneczech


10

У мене виникло це питання після оновлення до OS X El Captian. Оновлення до останньої версії VB вирішило проблему для мене. Віртуальна скринька надасть вам останнє посилання, якщо ви перейдете до меню віртуальної скриньки у верхній частині екрана та натисніть кнопку перевірити наявність оновлень.


10

Отримала помилку в Mac після оновлення до Mojave. Напевно, у вас є старша версія віртуальної скриньки.

Оновлення до останньої версії virtualbox. (5.2 під час написання цієї публікації)

Редагувати: додавання коментаря @ lsimonetti

На додаток до оновлення до Virtualbox 5.2 вам потрібен Vagrant> = 2.0.1


1
На додаток до оновлення до Virtualbox 5.2 вам потрібен Vagrant> = 2.0.1 github.com/hashicorp/vagrant/blob/v2.1.5/…
lsimonetti

8

Якщо ви працюєте в Linux, просто запустіть: sudo vboxreload


13
vboxreload не існує. Ні
vbox

7

Я запускаю Oracle VM Virtualbox на Ubuntu 16.04 LTS .

Рішення, яке працювало, було перевстановити віртуальну скриньку, як згадувалося тут :

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

sudo apt-get install virtualbox

Я не зміг знайти свою папку установки VirtualBox, тому що така команда не могла видати команду:

$sudo /Library/StartupItems/VirtualBox/VirtualBox restart


Моє місцеве оточення просто перестало реагувати. Не вдалося стати бродячим. видалити та встановити vbox виправлено незалежно від проблеми. Спасибі
Нік Дюбуа


3

У моєму випадку мені вдалося вирішити цю проблему, перевстановивши віртуальну скриньку. Я намагався використовувати садибу Ларавеля, і була ця помилка. Перевстановлення допомагає знову створити каталоги, необхідні для віртуального вікна. Мені потрібна година, щоб розібратися.


3

Я запускаю Debian 8 (Jessie), Vagrant 1.6.5 та Virtual Box 4.3.x з тією ж проблемою.

Для мене це було фіксованим виконанням:

sudo /etc/init.d/vboxdrv setup

2

Я використовую ubuntu 14.04. У мене на віртуальний ящик встановлена ​​генімоція. Кожен раз, коли я запускав генімоцію, у мене не було проблем, але раптом один раз вона сказала, що не може завантажити движок virtualbox, і він не відкрився. Я переглянув файл журналу і виявив, що він не може створити нову мережу лише для хостів, оскільки він уже створив усі можливі мережі, що стосуються лише хоста. І проблема полягає в тому, що він не може виділити пам'ять для нової мережі.

Виправлення: перейдіть до віртуального вікна Файл -> Налаштування -> Мережа

Перейдіть на вкладку "Хост" і просто видаліть деякі мережі, лише для хоста, щоб ви звільнилися від пам'яті, і наступного разу нову мережу можна буде легко створити.

Видалення вирішило мою проблему.


Дякую за це У мене було те саме питання.
Тихомир Мещич

Дякую за це Я використовував віртуальну коробку на Windows, і в мене була точно така ж проблема. Ваш натяк на перевірку переваг мережі допоміг мені вирішити це питання.
user1501382

1

Я виправив цю помилку, встановивши VirtualBox 4.2 замість 4.3. Я думаю, що остання версія бродячого та VB 4.3 несумісні у системі Fedora.


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

Для мене чудово працювали на Mac. Зазвичай це відбувається, коли я вимикаю комп'ютер без запуску

$vagrant suspend

1
  • Версія CentOS Linux 7.2.1511 (Core)
  • VirtualBox-5.0

Я натрапив на цей протектор під час пошуку в Google ... VBoxManage: помилка: Не вдалося створити адаптер, призначений лише для хоста

Я використовував VirtualBox-5.0 для тестування деяких віртуальних машин, створених за допомогою Vagrant та встановлення приватних мереж у моєму Vagrantfile web.vm.network "private_network", ip: "192.168.10.2"

При викликанні команди $ vagrant я отримав би згадану вище помилку разом з / 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

2
сервіс не знайдено :( хоча встановлено віртуальну скриньку.
Rubinum

1

VirtualBox Windows 10 Pro 5.2.12

У моєму випадку мені довелося відредагувати адаптер Ethernet-єдиного хоста у графічному інтерфейсі VirtualBox. Клацніть Глобальні інструменти -> Менеджер хост-мережі -> Виберіть адаптер Ethernet і натисніть Властивості. Моє налаштування було налаштовано автоматично, і IP-адреса, яку він намагався використовувати, була іншою, ніж те, що я намагався використовувати з drupal-vm та бродячим. Мені просто довелося змінити це вручну та виправити IP-адресу. Я сподіваюся, що це допомагає комусь іншому.


1

Для macOS Mojave це рішення спрацювало:

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

1

Я зіткнувся з цим питанням на mac.

Я зробив наступне Перейти до: Запуск -> Віртуальний скринька

Клацніть піктограму, щоб відкрити Virtualbox

Запустіть Virtualbox за допомогою кнопки, яка з’явиться після запуску Virtualbox. Зачекайте, поки вікно терміналу надасть вам підказку,

docker @ boot2docker

Потім спробуйте відкрити докер. Сподіваюся, це працює!


0

Що мені допомогло в Opensuse 42.1, це встановити VirtualBox та Vagrant з офіційних RPM, а не з сховищ Opensuse.


0

Я зіткнувся з цією проблемою в Windows 8.1, VirtualBox 5.1.18 та Vagrant 1.9.3.

Видалення адаптера Ethernet лише для хостів VirtualBox з налаштувань VirtualBox (Мережа -> Мережі лише для хостів) виправили це для мене, і я vagrant upміг продовжувати та запускати VM.



0

У мене була така ж проблема, дотримуючись підручника з налаштування Laravel Homestead для Windows 10. У підручнику наведено приклад IP-адреси, яку 192.168.10.10потрібно використовувати для сервера. Проблема їхнього прикладу IP полягає в тому, що якщо у вас вже встановлений адаптер VirtualBox Host-Only, IP, який ви використовуєте для вашого бродячого сервера, повинен мати однакові перші три частини IP-адреси вашого поточного адаптера .

Ви можете перевірити, якою є поточна IP-адреса адаптера Virtualbox Host, запустивши ipconfig(windows) ifconfig(mac / linux) та шукаючи IPv4-адресу адаптера VirtualBox Host-Only Adapter. 192.168.56.1була моя. Зазвичай, якщо IP-хост є IP-адресою 192.168.56.1гостя, це буде 192.168.56.101замість використання прикладу IP, який я використовував 192.168.56.102. Будь-який IP, який все 192.168.56.*ще не прийнятий, повинен працювати .

Після цього homestead upмені прекрасно працювало.

TL; DR - Якщо ваш поточний IP-адаптер VirtualBox-адаптера лише 192.168.56.1, зробіть IP-сервера Vagrant IP 192.168.56.102.


0

У мене була та сама проблема саме зараз, і її було вирішено просто перевстановити на останню версію VirtualBox.

Для тих, хто працює на Mac OS High Sierra - установка може спочатку не вдатися, але вам потрібно перейти до системних налаштувань> Безпека та політика та натиснути кнопку "Дозволити", щоб дозволити Oracle встановити програмне забезпечення.


0

Якщо ви використовуєте macOS High Sierra або версію версії, ви можете знайти скрипт bash за адресою:

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

Тож якщо у вас виникла така помилка:

/ Підтримка бібліотеки / програм / VirtualBox / VBoxDrv.kext не вдалося завантажити - (libkern / kext) системна політика запобігає завантаженню; перевірте наявність системних / ядерних журналів на наявність помилок або спробуйте kextutil (8).

Ви можете вирішити це через System Preferences > Security & Privacyрозділ та AllowVirtualBox.


0

Моє рішення

Налаштування системи -> Конфіденційність системи безпеки -> Дозволити oracle.xxxx; потім перевстановити virtualBox.


0

Я хочу це зазначити.

Відкрийте VirtualBox і вимкніть кожен запущений VM.

Вимкнення повинно бути вимкнено.

І якщо ваш віртуальний ящик був доданий в Шлях в Linux (Mine is Ubuntu). Ви можете просто скористатися командою: virtualbox restart


0

Спробуйте такі:

sudo modprobe vboxnetadp

sudo modprobe vboxnetflt

sudo modprobe vboxdrv


Я сумніваюся, що це допомагає або взагалі працює. Щоб переконати мене в іншому, поясніть, як це працює, і чому це має допомогти.
Yunnosch

Я встановив virtualbox на ядро, відмінне від того, яке я маю зараз (4.19 і зараз 5.4). Щоб уникнути оновлення всієї системи, я використав це рішення для включення вже існуючого інтерфейсу vboxnet0. Він працював і досі працює при запуску virtualbox.
andremtsilva

Тепер я побачив, що ця публікація стосується Mac OS, а не Linux. Вибач за це.
andremtsilva

Справа в тому, що це незрозуміла відповідь лише для коду, яка страждає від відсутності реального розуміння та корисності. Ваш коментар трохи покращує речі, але його слід редагувати в саму відповідь. І це все ще насправді не є поясненням. Мені б хотілося фрази на кшталт "... тому що ....", "... для того, щоб ...", "..., що обережно ....". Також деякий фон на зразок "Як описано в документації (посилання) це ....", "... і тим самим вирішує проблему, як описано в ОП".
Yunnosch

0

Я прийшов сюди, працюючи з кухнею-CI і маючи проблеми з бродячим. Після (повторного) переміщення довідника "~ / .kitchen" це kitchen convergeбуло знову успішним


0

Перевірені численні рішення, але подана нижче послідовність працює для мене.

Віртуальна коробка: 5.2.34 Vagrant: 2.2.5 Mac OSX: 10.14.6

Спочатку Дозвольте доступ до Oracle inc:

Перейдіть до системних налаштувань> Безпека та конфіденційність. Потім натисніть кнопку "Дозволити", щоб дозволити завантаження Oracle (VirtualBox).

Потім перезапустіть VBox за допомогою цієї команди:

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

Тепер спробуйте Vagrant ще раз.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.