Unable to launch existing Virtualbox VMs after upgrading to Fedora 35

I upgraded from Fedora 34, when attempting to start any of my VMs I’m greeted with the message:

Kernel driver not installed (rc=-1908)

The VirtualBox Linux kernel driver (vboxdrv) is probably not loaded.You may not have kernel driver installed for kernel that is runnig, if so you may do as root: dnf install akmod-VirtualBox kernel-devel-$(uname -r)
If you installed VirtualBox packages and don’t want reboot the system, you may need load the kernel driver, doing as root: akmods; systemctl restart vboxdrv.service

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 dnf install akmod-VirtualBox kernel-devel-$(uname -r) reports:

Package akmod-VirtualBox-6.1.30-1.fc35.x86_64 is already installed.
Package kernel-devel-5.15.17-200.fc35.x86_64 is already installed.
1 Like

What is the output of sudo systemctl status vboxdrv.service ?

Maybe you just need to start it with sudo systemctl start vboxdrv.service. If that works, you can permanently enable it (so, start at each boot) with sudo systemctl enable vboxdrv.service. If that does not work: let’s see what the status output says :slight_smile:

× vboxdrv.service - Linux kernel module init script
     Loaded: loaded (/usr/lib/systemd/system/vboxdrv.service; enabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Mon 2022-01-31 18:00:40 EET; 1 day 1h ago
   Main PID: 1892 (code=exited, status=1/FAILURE)
        CPU: 1ms

Jan 31 18:00:40 localhost.localdomain systemd[1]: Starting Linux kernel module init script...
Jan 31 18:00:40 localhost.localdomain modprobe[1892]: modprobe: FATAL: Module vboxdrv not found in directory /lib/mod>
Jan 31 18:00:40 localhost.localdomain systemd[1]: vboxdrv.service: Main process exited, code=exited, status=1/FAILURE
Jan 31 18:00:40 localhost.localdomain systemd[1]: vboxdrv.service: Failed with result 'exit-code'.
Jan 31 18:00:40 localhost.localdomain systemd[1]: Failed to start Linux kernel module init script.

Maybe you just need to start it with sudo systemctl start vboxdrv.service .

Job for vboxdrv.service failed because the control process exited with error code.
See "systemctl status vboxdrv.service" and "journalctl -xeu vboxdrv.service" for details.

journalctl -xeu vboxdrv.service output?

Feb 01 19:27:59 localhost.localdomain modprobe[194186]: modprobe: FATAL: Module>
Feb 01 19:27:59 localhost.localdomain systemd[1]: vboxdrv.service: Main process>
░░ Subject: Unit process exited
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ An ExecStart= process belonging to unit vboxdrv.service has exited.
░░ 
░░ The process' exit code is 'exited' and its exit status is 1.
Feb 01 19:27:59 localhost.localdomain systemd[1]: vboxdrv.service: Failed with >
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ The unit vboxdrv.service has entered the 'failed' state with result 'exit-co>
Feb 01 19:27:59 localhost.localdomain systemd[1]: Failed to start Linux kernel >
░░ Subject: A start job for unit vboxdrv.service has failed
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ A start job for unit vboxdrv.service has finished with a failure.
░░ 
░░ The job identifier is 959684 and the job result is failed.
lines 274-296/296 (END)

Unfortunately, this output is not sufficient to identify the problem.

Try again to start the service with sudo systemctl start vboxdrv.service (to document the error in the recent logs) and after that, provide the output of journalctl -n 500.

Just to ensure that all of your system is at the same level: have you already done a sudo dnf update after the upgrade and then another reboot? If not, do this at first, and then try again to start the service.

1 Like

I was quite confident that I updated and rebooted the system after installing Fedora 35, but I’m not certain anymore. dnf issued Virtualbox-related updates and all of my VMs launch & boot now.

I just upgraded from Fedora 33 to Fedora 35, and I experienced the same issue in being unable to launch any virtualbox things. I used dnf system-upgrade to do the reboot and have not found anything else wrong.
The akmod-VirtualBox is installed, but the vboxdrv service couldn’t find the module.
I tried rebooting and re-running dnf update, but there was no change.
For the record:

Feb 11 16:32:00  systemd[1]: Starting Linux kernel module init script...
Feb 11 16:32:00  modprobe[1215]: modprobe: FATAL: Module vboxdrv not found in directory /lib/modules/5.16.7-200.fc35.x86_64
Feb 11 16:32:00  systemd[1]: vboxdrv.service: Main process exited, code=exited, status=1/FAILURE
Feb 11 16:32:00  systemd[1]: vboxdrv.service: Failed with result 'exit-code'.
Feb 11 16:32:00  systemd[1]: Failed to start Linux kernel module init script.
Feb 11 16:35:00  systemd[1]: Starting Linux kernel module init script...
Feb 11 16:35:00  modprobe[1978]: modprobe: FATAL: Module vboxdrv not found in directory /lib/modules/5.16.7-200.fc35.x86_64
Feb 11 16:35:00  systemd[1]: vboxdrv.service: Main process exited, code=exited, status=1/FAILURE
Feb 11 16:35:00  systemd[1]: vboxdrv.service: Failed with result 'exit-code'.
Feb 11 16:35:00  systemd[1]: Failed to start Linux kernel module init script.

I doublechecked and found the kernel modules there:

$ find /lib/modules/5.16.7-200.fc35.x86_64/ | grep vbox
/lib/modules/5.16.7-200.fc35.x86_64/kernel/drivers/gpu/drm/vboxvideo
/lib/modules/5.16.7-200.fc35.x86_64/kernel/drivers/gpu/drm/vboxvideo/vboxvideo.ko.xz
/lib/modules/5.16.7-200.fc35.x86_64/kernel/drivers/virt/vboxguest
/lib/modules/5.16.7-200.fc35.x86_64/kernel/drivers/virt/vboxguest/vboxguest.ko.xz
/lib/modules/5.16.7-200.fc35.x86_64/kernel/fs/vboxsf
/lib/modules/5.16.7-200.fc35.x86_64/kernel/fs/vboxsf/vboxsf.ko.xz
/lib/modules/5.16.7-200.fc35.x86_64/extra/VirtualBox/vboxdrv.ko
/lib/modules/5.16.7-200.fc35.x86_64/extra/VirtualBox/vboxnetadp.ko
/lib/modules/5.16.7-200.fc35.x86_64/extra/VirtualBox/vboxnetflt.ko

A manual invocation of modprobe vboxdrv did not help.

What did help, though, was a manual run of depmod.

sudo depmod -a

After that, modprobe worked. I can only assume that something happened in the upgrade that broke running of depmod. I also tried removing and re-installing akmod-VirtualBox, but it didn’t help (I suspect that the installation of kmod-VirtualBox-… broke in some way, and if I explicitly removed it, that might have worked.)

Good luck, everyone!

1 Like