就我而言,此答案仅在Ubuntu和Debian 9中进行了测试,但也许对您有用。
我认为问题在于vboxdrv
模块没有签名,因此没有加载内核。如果您的计算机激活了 SecureBoot 模式,就会发生这种情况,这在现代设备中非常常见。
这就是为什么我在 Virtual Box 中打开任何机器时都会收到此错误
未安装内核驱动程序 (rc=-1908)
执行以下步骤对驱动程序进行签名,并将其作为内核模块加载:
1.安装mkutil
包可以做签名。
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install mokutil
2.生成签名文件:
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.最后重启电脑。将出现蓝屏并等待键盘,按要求您中断启动的键。
当您在蓝屏内时,选择
Enroll MOK > Continue > Yes > and it will ask you for the password
之前输入过的,输入后会提示操作已成功完成。
现在您的操作系统将启动,您现在可以毫无问题地使用 VirtualBox :)
希望这对某人有所帮助。