Kernel driver not installed (rc=-1908)
The VirtualBox Linux kernel driver is either not loaded or not set up correctly. Please try setting it up again by executing
isbin/vboxconfig
as root.
If your system has EFI Secure Boot enabled you may also need to sign the kernel modules (boxdrv, vboxnetfit, boxnetadp.
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.
This error means that VirtualBox’s kernel modules (like vboxdrv
) are either missing, not built for your current kernel, or are blocked by Secure Boot. Here’s how you can resolve it:
Often, simply rebuilding the modules fixes the issue. Open a terminal and run:
sudo /sbin/vboxconfig
This command recompiles and installs the necessary VirtualBox kernel modules.
Note: On some systems the command might be located at /usr/lib/virtualbox/vboxconfig
or similar—check the distribution’s documentation if needed.
Make sure you have the necessary development tools and kernel headers installed so that the modules can be built correctly. For Debian/Ubuntu-based systems, run:
sudo apt-get update
sudo apt-get install dkms build-essential linux-headers-$(uname -r)
For other distributions, use the equivalent package manager commands (e.g., yum
, dnf
, or zypper
) to install DKMS, development tools, and the kernel headers for our current kernel.
If out system uses EFI Secure Boot, the kernel might refuse to load unsigned modules. You have two options:
Enter our BIOS/UEFI settings (usually by pressing a key like F2, F10, Del, or Esc during startup).
Boot back into our system and try running VirtualBox again.
Sign the VirtualBox Kernel Modules
If you prefer to keep Secure Boot enabled, you’ll need to sign the VirtualBox modules. Here’s a high-level overview of the process:
Open a terminal and create a directory for our keys:
mkdir ~/module-signing && cd ~/module-signing
Generate a key pair with:
openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv \
-outform DER -out MOK.der -nodes -days 36500 -subj "/CN=VirtualBox Module Signing/"
Replace $(uname -r)
appropriately if needed. Run the following commands for each module:
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 \
~/module-signing/MOK.priv ~/module-signing/MOK.der $(modinfo -n vboxdrv)
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 \
~/module-signing/MOK.priv ~/module-signing/MOK.der $(modinfo -n vboxnetflt)
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 \
~/module-signing/MOK.priv ~/module-signing/MOK.der $(modinfo -n vboxnetadp)
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 \
~/module-signing/MOK.priv ~/module-signing/MOK.der $(modinfo -n vboxpci)
Import the generated key so that our system trusts the signed modules:
sudo mokutil --import ~/module-signing/MOK.der
You’ll be prompted to create a password. Reboot our computer. During boot, a blue “MOK Manager” screen will appear. Follow the prompts to enroll the key (using the password you just set).
After enrolling, the signed modules should load without issue under Secure Boot.
After completing the above steps, launch VirtualBox. The error should no longer appear, and our virtual machines should start correctly.
Summary
• Rebuild modules: sudo /sbin/vboxconfig
• Ensure development tools and headers are installed.
• For Secure Boot:
• Option A: Disable Secure Boot in our BIOS/UEFI.
• Option B: Sign the VirtualBox modules and enroll the key using mokutil.
If you continue to experience problems, double-check that our VirtualBox version is compatible with our current kernel, and consult our distribution’s documentation for additional troubleshooting tips.