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.