VirtualBox 5 не в змозі створити адаптер лише для хоста на Ubuntu 16.04


10

Використання Ubuntu 16.04 та встановлення VirtualBox 5 відповідно до встановленого тут методу для "дистрибутивів на базі Debian":

https://www.virtualbox.org/wiki/Linux_Downloads

Це стикається з проблемою з ядром у цій версії, яка вирішується як така:

https://askubuntu.com/a/768310/254069

Спроба створити адаптер, що використовується лише для хостів, не вдається:

$ VBoxManage hostonlyif create
0%...
Progress state: NS_ERROR_FAILURE
VBoxManage: error: Failed to create the host-only adapter
VBoxManage: error: VBoxNetAdpCtl: Error while adding new interface: failed to open /dev/vboxnetctl: No such file or directory
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component HostNetworkInterfaceWrap, interface IHostNetworkInterface
VBoxManage: error: Context: "RTEXITCODE handleCreate(HandlerArg*)" at line 71 of file VBoxManageHostonly.cpp

що lsof | grep vboxпоказує?
Стефан Шмідль

Відповіді:


6

Виявляється, що рішення проблеми мережі - це окремий модуль, який повинен бути підписаний, щоб дозволити цю конкретну функцію. Як зазначено в рішенні для підписання тут: https://askubuntu.com/a/768310/254069

VBoxManage hostonlyif create потрібні наступні модулі, щоб вони також були доступними (modprobe):

openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=MOK Signing/"

sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vboxdrv)
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vboxnetflt)
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vboxnetadp)
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vboxpci)

sudo mokutil --import MOK.der

Перезапустіть і "Зареєструйте MOK"

$ VBoxManage hostonlyif create
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Interface 'vboxnet1' was successfully created

Я отримую "Змінні EFI не підтримуються в цій системі", коли я запускаю команду "sudo mokutil --import MOK.der". будь-яка ідея?
emeraldjava

Це я теж отримав. Pls допоможіть нам.
Рубін

Цього більше не трапляється для мене з останньою версією VirtualBox, встановленою через придатність 16.04
TomSchober

0

У Ubuntu 17 zesty, свіжа установка, свіжий VirtualBox, мережа лише для хостів не працюють.

# ip a
4: vboxnet0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 0a:00:27:00:00:00 brd ff:ff:ff:ff:ff:ff
5: vboxnet1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 0a:00:27:00:00:01 brd ff:ff:ff:ff:ff:ff

рішення було:

# ip link set vboxnet0 up
# ip link set vboxnet1 up

і працює !!!


1
Я не розумію. Будь ласка, уточніть, де поставити / ввести або що робити з цими рядками. Команда консолі? Конфігурація? Господар чи гість?
mondjunge

0

Я знайшов ще одне простіше рішення для вирішення цієї проблеми, але воно стосується VirtualBox 6.0+. . . він також може працювати з 5.x, але я не перевіряв його на цій версії.

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

wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -

Після додавання цих ключів ви зможете встановити VirtualBox звичайним способом, і він буде добре працювати з більшістю функцій (за винятком тих, для яких потрібне власне розширення, все одно потрібно буде встановити його для цих функцій)


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