fedora 更新内核驱动
VitualBox is installed on Fedora 21 by
VitualBox通过以下方式安装在Fedora 21上
# yum install VirtualBox
The following packages are installed
已安装以下软件包
kmod-VirtualBox-3.18.7-200.fc21.x86_64-4.3.20-4.fc21.4.x86_64
VirtualBox-4.3.20-3.fc21.x86_64
There is the kernel modules package installed.
安装了内核模块软件包。
However, when running virtualbox
(after reboot), it reports:
但是,在运行virtualbox
(重新引导后)时,它将报告:
[zma@laptop:~]$ virtualbox
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
available for the current kernel (3.18.7-200.fc21.x86_64) or it failed to
load. Please recompile the kernel module and install it by
sudo /etc/init.d/vboxdrv setup
You will not be able tostart VMs until this problem is fixed.
How to configure it correctly?
如何正确配置?
If you can not find vboxdrv module loaded by
如果找不到vboxdrv模块加载的
lsmod | grep vboxdrv
you may try to manually load it:
您可以尝试手动加载它:
sudo modprobe vboxdrv
If you see a message like this:
如果您看到这样的消息:
modprobe:ERROR: could not insert 'vboxdrv': Required key not available
then, modprobe is complaining about required key not being available. You are probably run Linux on a system with UEFI Secure Boot enabled. Want to know more about UEFI SEcure Boot? Please check Fedora’s document.
然后,modprobe抱怨所需的密钥不可用。 您可能在启用UEFI安全启动的系统上运行Linux 。 想更多地了解UEFI SEcure Boot? 请检查Fedora的文档 。
Now, problem identified and the solution is not that hard. There are some solutions on the Web. Here, I summarize the steps.
现在,发现问题并且解决方案并不难。 Web上有一些 解决方案 。 在这里,我总结了这些步骤。
$ sudo yum install kernel-devel
$ openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=FcloseDotCom/"
$ sudo /usr/src/kernels/$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vboxdrv)
$ sudo mokutil --import MOK.der
modutil --import
will ask you to set a password.
modutil --import
将要求您设置密码。
Then, reboot the system. During booting, the EFI system will ask you to import the key with the password you set following the steps it shows. After your key is imported, you can boot Linux and the vboxdrv module should will be well loaded and you can start VirtualBox.
然后,重新启动系统。 在引导过程中,EFI系统将要求您按照显示的步骤导入具有您设置的密码的密钥。 导入密钥后,可以启动Linux,并且vboxdrv模块应该加载得很好,并且可以启动VirtualBox。
After reboot, you may also check the imported keys in the system by:
重新启动后,您还可以通过以下方法检查系统中导入的密钥:
$ sudo keyctl list %:.system_keyring
One more note, each time you upgraded VirtualBox, remember to do the sign-file
step again to sign the modules.
还有一点需要注意的是,每次升级VirtualBox时,请记住再次执行sign-file
步骤来对模块进行签名。
sudo /usr/src/kernels/$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vboxdrv)
Thank you for the great explanation. I was able to follow all the steps except for the part where the EFI system asks to import the key.
谢谢您的解释。 除了EFI系统要求导入密钥的部分之外,我能够按照所有步骤进行操作。
I had to go to the boot setup and at the ‘secure boot’ put the system to accept keys, I don’t remember the name of the option now.
我必须去启动设置,然后在“安全启动”下将系统接受密钥,我现在不记得该选项的名称了。
Hi Ben, thanks for the note on the boot set up. It will be useful for others.
Ben,您好,感谢您对启动设置的注意。 对其他人有用。
For me, during rebooting, it automatically boots to the key import interface.
对我来说,在重新启动期间,它会自动引导到密钥导入界面。
BTW: which OS and version are you using?
顺便说一句:您正在使用哪个操作系统和版本?
翻译自: https://www.systutorials.com/virtualbox-report-kernel-driver-not-installed-on-fedora-21/
fedora 更新内核驱动