VirtualBox 5 не может создать адаптер только для хоста в Ubuntu 16.04

10

Использование Ubuntu 16.04 и установка VirtualBox 5 в соответствии с предписанным здесь методом для «дистрибутивов Linux на основе 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
TomSchober
источник
что 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

Перезапустите и «Зарегистрируйте МОК»

$ VBoxManage hostonlyif create
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Interface 'vboxnet1' was successfully created
TomSchober
источник
Я получаю «Переменные EFI не поддерживаются в этой системе», когда я запускаю команду «sudo mokutil --import MOK.der». Есть идеи?
изумруджава
Я тоже это получил. Пожалуйста, помогите нам.
Рубин
Это больше не происходит для меня с последней версией VirtualBox, установленной через aptitude 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

и работает !!!

hejeroaz
источник
1
Я не понимаю Пожалуйста, уточните, где поставить / ввести или что делать с этими строками. Консольная команда? Конфигурация? Хост или Гость?
понедельник,
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 обычным способом, и он будет нормально работать с большинством функций (за исключением тех, которые требуют проприетарного расширения, для этих функций все равно потребуется установить его)

Майкл Туннелл
источник
-1

Запустите VirtualBox в Sandbox, используя Firejail, как показано ниже:

firejail --noprofile virtualbox
Trippletech Magabe
источник