无法在Arch上安装VirtualBox

5
我曾尝试使用pacman在Arch(4.7.0-1)上安装Virtualbox,一切似乎都进行得很顺利,直到我尝试运行它时。 我会收到以下消息
警告:vboxdrv内核模块未加载。 当前内核(4.7.0-1-ARCH)没有可用的模块或者加载失败。 请重新编译内核模块并通过以下方式安装
       sudo /sbin/vboxconfig

     You will not be able to start VMs until this problem is fixed.

VirtualBox: supR3HardenedMainGetTrustedMain: dlopen("/usr/lib/virtualbox/VirtualBox.so",) failed: /usr/lib/libQt5Core.so.5:文件太短

您觉得我应该从哪里开始调试?

3个回答

5

1
这个答案在我的情况下仅在Ubuntu和Debian 9中进行了测试,但也许对你有用。
我认为问题在于vboxdrv模块没有签名,因此没有与内核一起加载。如果您的计算机启用了SecureBoot模式,则会发生这种情况,这是现代设备中非常普遍的事情。
这就是为什么我在Virtual Box中打开任何机器时都会收到以下错误:
内核驱动程序未安装(rc=-1908)
执行以下步骤以签署驱动程序并将其加载为内核模块:
1. 安装mkutil软件包以进行签名。
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install mokutil

生成签名文件:
openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=VirtualBox/"

3. 然后将其添加到内核中:

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

4. 为其注册安全启动。

重要提示! 这会要求您输入密码,请输入您想要的密码,您只需要在下一次重新启动时使用它一次。

sudo mokutil --import MOK.der
5. 最后,重启电脑。会出现一个带有等待键盘的蓝色屏幕,请按要求中断启动的按键。

enter image description here

当您处于蓝色屏幕内时,请选择

Enroll MOK > Continue > Yes > and it will ask you for the password

如果您之前输入的信息正确,您将重新输入并且会收到操作已成功完成的通知。

现在您的操作系统将启动,您可以正常使用VirtualBox :)

希望这能对某些人有所帮助。


-1

打开终端 - 验证版本/代号

代码:

lsb_release -a

使用任何纯文本编辑器,如gedit/scite/bash

代码:

sudo gedit /etc/apt/sources.list

将以下行添加到您的/etc/apt/sources.list中:

代码:

deb http://download.virtualbox.org/virtualbox/debian xenial contrib

保存并关闭

添加密钥,并与下载和注册结合使用;

代码:

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 -

确保已安装DKMS。可能需要重新安装到当前内核。

代码:

dkms status

在这一步中,您可能会遇到一个关于linux-headers的错误,只需通过apt-get install linux-headers-5.4.0-28-generic下载头文件包即可。

确保计算机和操作系统是最新的

代码:

sudo apt-get autoclean sudo apt-get clean sudo apt-get autoremove sudo apt-get update sudo apt-get upgrade

重新构建当前运行内核的所有DKMS模块:

代码:

dkms autoinstall

安装最新版本的VirtualBox

代码:

sudo apt-get install virtualbox


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接