VirtualBox 5无法在Ubuntu 16.04上创建仅主机的适配器


10

根据此处针对“基于Debian的Linux发行版”的规定方法,使用Ubuntu 16.04并安装VirtualBox 5:

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秀?
Stefan Schmiedl,2016年

Answers:


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

当我运行“ sudo mokutil --import MOK.der”命令时,出现“此系统不支持EFI变量”。任何的想法?
emeraldjava '16

我也是。请帮助我们。
Rubinum

在16.04上通过aptitude安装了最新版本的VirtualBox之后,对于我来说这不再发生了
-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,它将对大多数功能都适用(除了需要专有扩展的功能,仍然需要为这些功能安装功能)


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.