VirtualBox:Linux kernel driver not loaded

After my upgrade from OpenSUSE Leap 15.2 to 15.3, I was able to upgrade VirtualBox, and the KMP kernel package.
However when I try to run my Windows 10 VirtualBox, it complains about missing kernel driver.

The VirtualBox Linux kernel driver is either not loaded or not set up correctly. Please try setting it up again by executing

‘/sbin/vboxconfig’

as root.

If your system has EFI Secure Boot enabled you may also need to sign the kernel modules (vboxdrv, vboxnetflt, vboxnetadp, vboxpci) before you can load them. Please see your Linux system’s documentation for more information.

where: suplibOsInit what: 3 VERR_VM_DRIVER_NOT_INSTALLED (-1908) - The support driver is not installed. On linux, open returned ENOENT.

Running this tool does not work.


**arcturus:/root #** /usr/sbin/vboxconfig  
Building kernel modules...
Kernel modules built correctly. They will now be installed.
insmod /lib/modules/5.3.18-150300.59.46-default/weak-updates/extra/vboxdrv.ko  
modprobe: ERROR: could not insert 'vboxnetflt': Key was rejected by service
insmod /lib/modules/5.3.18-150300.59.46-default/weak-updates/extra/vboxdrv.ko  
modprobe: ERROR: could not insert 'vboxnetadp': Key was rejected by service
Kernel modules are installed and loaded.

I never before had to run this tool when I updated VirtualBox.

I do not think I have EFI Secure Boot enabled, but I have not needed to sign my kernel modules before when I used Leap 15.2



**arcturus:/root #** ls /sys/firmware/efi
config_table  **efivars****esrt**  fw_platform_size  fw_vendor  **mok-variables**  runtime  **runtime-map****secret-key**  systab  **vars**

Checking Linux kernel and VirtualBox kernel module compatibility:


rpm -q virtualbox-kmp-default                 
virtualbox-kmp-default-6.1.32_k5.3.18_59.40-lp153.2.21.1.x86_64

uname -a
Linux arcturus 5.3.18-150300.59.46-default

zypper search --installed-only -s kernel-default
i+ | kernel-default          | pakke | 5.3.18-150300.59.46.1 | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i+ | kernel-default          | pakke | 5.3.18-59.10.1        | x86_64 | Main Repository
i+ | kernel-default          | pakke | 5.3.18-59.10.1        | x86_64 | Update repository with updates from SUSE Linux Enterprise 15

Edit: I booted into the other kernel available “5.3.18-59.10.1”, but got the same problem

Could it have something to do with the linux kernel installed through the SLES repository is not the same version of the Linux kernel the VirtualBox KMP is built against?

You have to install:

zypper in -f openSUSE-signkey-cert kernel-default-extra kernel-default-optional

If sercure boot is enabled, maybe you have to enroll mok-key into your mok:
https://forums.opensuse.org/showthread.php/560900-Help-on-booting-to-a-5-14-11-kernel-stable-backports-kernel-with-secure-boot-(or-must-I-disable)?p=3073187#post3073187

No extern kmps without kernel-xxxxx-extra

I already have these packages installed

Here not, as you can see:

zypper search --installed-only -s kernel-default
i+ | kernel-default          | pakke | 5.3.18-150300.59.46.1 | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i+ | kernel-default          | pakke | 5.3.18-59.10.1        | x86_64 | Main Repository
i+ | kernel-default          | pakke | 5.3.18-59.10.1        | x86_64 | Update repository with updates from SUSE Linux Enterprise 15

I did not include the complete output, only what I thought was important.

Here is the complete output of installed kernel-default packages.


**arcturus:/home/djviking #** zypper search --installed-only -s kernel-default
Laster pakkebrønndata...
Leser installerte pakker...

S  | Name                    | Type  | Version               | Arch   | Repository
---+-------------------------+-------+-----------------------+--------+-------------------------------------------------------------
i+ | kernel-default          | pakke | 5.3.18-150300.59.46.1 | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i+ | kernel-default          | pakke | 5.3.18-59.10.1        | x86_64 | Main Repository
i+ | kernel-default          | pakke | 5.3.18-59.10.1        | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i+ | kernel-default-devel    | pakke | 5.3.18-150300.59.46.1 | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i+ | kernel-default-devel    | pakke | 5.3.18-59.10.1        | x86_64 | Main Repository
i+ | kernel-default-devel    | pakke | 5.3.18-59.10.1        | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i+ | kernel-default-extra    | pakke | 5.3.18-150300.59.46.1 | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i+ | kernel-default-extra    | pakke | 5.3.18-59.10.1        | x86_64 | Main Repository
i+ | kernel-default-extra    | pakke | 5.3.18-59.10.1        | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i+ | kernel-default-optional | pakke | 5.3.18-150300.59.46.1 | x86_64 | Update repository with updates from SUSE Linux Enterprise 15
i+ | kernel-default-optional | pakke | 5.3.18-59.10.1        | x86_64 | Main Repository
i+ | kernel-default-optional | pakke | 5.3.18-59.10.1        | x86_64 | Update repository with updates from SUSE Linux Enterprise 15

I reinstalled the packages you mentioned. Something strange happened duriing boot, I have never seen before.
Blue screen, Something about loading MOK, or continue boot.
I chose continue boot. Grub was not graphical any more, only text.
But I was able to boot. VirtualBox still not working.

I reinstalled the packages you mentioned. Something strange happened duriing boot, I have never seen before.
Blue screen, Something about loading MOK, or continue boot.
I chose continue boot. Grub was not graphical any more, only text.
But I was able to boot. VirtualBox still not working.

That secure boot.

Only signed kmps can be used, but you have to add the key to mok (blue screen on boot)

See the link in my post.

Or disable secure boot in bios/uefi

I tried to install the exact same version of Linux kernel that matched the virtualbox kmp package.
i+ | virtualbox-kmp-default | pakke | 6.1.32_k5.3.18_59.40-lp153.2.21.1 | x86_64 | Main Update Repository
i+ | kernel-default | pakke | 5.3.18-59.40.1 | x86_64 | Update repository with updates from SUSE Linux Enterprise 15

I booted, but I did not get the Secure Boot again like I did before.
VirtualBox still does not work.

Why now I need to add the key to mok? I never had to do that before.


**arcturus:/root #** cd /etc/uefi/certs
**arcturus:/etc/uefi/certs #** ll
totalt 12
-rw-r--r-- 1 root root 1288 jan.   5 17:53 4AAA0B54.crt
-rw-r--r-- 1 root root 1257 juli  16  2021 BCA4E38E-shim.crt
-rw-r--r-- 1 root root 1177 mai    3  2021 BDD31A9E-kmp.crt
**arcturus:/etc/uefi/certs #** mokutil --import 4AAA0B54.crt --root-pw
Already in kernel trusted keyring. Skip 4AAA0B54.crt

You probably need:

mokutil --import BDD31A9E-kmp.crt

Then reboot, and you should see that blue screen. Take the option to enroll key.

Perhaps also check your shim version. As root:

zypper se -si shim

(there’s a broken version out there that some people have installed).

(there’s a broken version out there that some people have installed).

Broken kernel, or broken virtualbox-kmp?

I ran this

mokutil --import BDD31A9E-kmp.crt

Then in Secure Boot, I enrolled the key, confirmed, and rebooted.
Now VirtualBox will start up.

I am also running the matching kernel to virtualbox-kmp
virtualbox-kmp-default-6.1.32_k5.3.18_59.40-lp153.2.21.1
kernel-default-5.3.18-59.40.1

Broken “shim”. It gets passed secure-boot, but does not provide the MOK list for verifying other components. But, from the latest reply, that does not seem to be the problem here.

For me, thats worked:

sudo zypper in virtualbox*
sudo reboot