此问题仅发生在启用了安全启动的 UEFI 系统上。
当我尝试安装诸如 VirtualBox、Nvidia 或 Broadcom 驱动程序之类的 DKMS 模块时,它们不会安装,Required key not available
当我尝试安装它们时,我会安装modprobe
。
VirtualBox 抱怨vboxdrv
未加载。
Broadcomwl
驱动程序显示lspci -k
为内核模块,但未使用。sudo modprobe wl
抛出Required key not available
。
当我从 git 源安装一些内核模块时,也可能发生这个问题。
内核更新后可能会出现此问题,如禁用无线适配器、重启后黑屏等。
我该如何解决?
未安装内核驱动程序 (rc=-1908)
VirtualBox Linux 内核驱动程序 (vboxdrv) 未加载或 /dev/vboxdrv 存在权限问题。请通过执行重新安装内核模块
'/etc/init.d/vboxdrv 设置'
作为根。如果它在您的发行版中可用,您应该首先安装 DKMS 包。该软件包会跟踪 Linux 内核更改并在必要时重新编译 vboxdrv 内核模块。
对于使用 Virtual Box 的每个人来说,这是一条熟悉的信息。至少从 11.10 开始,这个“错误”每隔几个月就会出现一次。我今天在 14.04 上第一次得到它,不幸的是重新安装的经典解决方案virtualbox-dkms
没有任何效果:
sudo apt-get install linux-headers-generic build-essential dkms
sudo apt-get remove virtualbox-dkms
sudo apt-get install virtualbox-dkms
Run Code Online (Sandbox Code Playgroud)
这个旧修复失败的原因可能是什么?
更新:在评论中,用户 bain 引用了一个旧线程,该线程显然报告了相同的问题。虽然错误消息类似,但在 Ubuntu 14.04 上,此问题似乎具有不同的性质,与virtualbox-dkms
软件包无关。例如,在 Ubuntu 14.04 上,virtualbox
软件包是最新的:
$ sudo apt-cache policy virtualbox
virtualbox:
Installed: 4.3.10-dfsg-1
Candidate: 4.3.10-dfsg-1
Version table:
*** 4.3.10-dfsg-1 0
500 http://de.archive.ubuntu.com/ubuntu/ trusty/multiverse amd64 Packages
100 /var/lib/dpkg/status
Run Code Online (Sandbox Code Playgroud) 在 14.10 更新到 VirtualBox 后,我无法再运行我的盒子。值得注意的是,运行sudo service virtualbox status
返回VirtualBox kernel module is not loaded
和运行sudo service virtualbox restart
显示:
* Stopping VirtualBox kernel modules [ OK ]
* Starting VirtualBox kernel modules
* No suitable module for running kernel found
[fail]
Run Code Online (Sandbox Code Playgroud)
当我尝试运行一个框时,VirtualBox GUI 会弹出一个对话框,说我应该运行sudo /etc/init.d/vboxdrv setup
,但/etc/init.d/vboxdrv
在我的 14.10 安装中没有。
这让人想起这个问题。根据某些答案,我尝试卸载(使用purge
)并重新安装 VirtualBox。这没有帮助。但是,我无法安装:
linux-headers-`uname -r`
Run Code Online (Sandbox Code Playgroud)
因为没有名为linux-headers-3.13.0-30-generic
. 我确实安装linux-headers-generic
并linux-source
安装了 ,dkms
但重新安装仍然失败:
Reading package lists... Done
Building dependency …
Run Code Online (Sandbox Code Playgroud) 我刚刚从 13.10 升级到 14.04,但是当我执行 uname -r 时,它说我有内核 3.11。我想要默认的 14.04 内核(我相信是 3.13)。我怎样才能得到这个?
我正在尝试在 Ubuntu 16.04 上安装 VirtualBox,同时保持安全启动。当我通过 Synaptic 安装它时,我被要求删除 SecureBoot,我说No
。
我遵循以下说明: 升级到 Ubuntu 16.04 后无法加载“vboxdrv”(我想保持安全启动) 和 https://stegard.net/2016/10/virtualbox-secure-boot-ubuntu-fail/ 两者都是几乎相同(我将 MOK 文件保留在 /root 目录中,就像在第二个链接中一样)。一切似乎都正常,我重新启动,再次输入密码,重新启动。都好
但是当我尝试使用 VirtualBox 时,它仍然无法正常工作。如果我从终端运行它,我会得到:
WARNING: The character device /dev/vboxdrv does not exist.
Please install the virtualbox-dkms package and the appropriate
headers, most likely linux-headers-generic.
You will not be able to start VMs until this problem is fixed.
Run Code Online (Sandbox Code Playgroud)
但是这两个软件包已经安装并且是最新的。
另一篇文章的最佳答案中的评论说virtualbox-dkms
在遵循这些说明之前重新安装。我试过了,结果一样。
我在这里尝试了答案:
VirtualBox 的安装问题
这再次提示我询问是否要禁用安全启动,我说No
,然后回到第一个。
如果我跑modprobe
我得到:
modprobe: ERROR: could not insert 'vboxdrv': Required key not …