rc=-1908

Fix VirtualBox Kernel Driver Not Installed (rc=-1908) on Linux

Server & Cloud Beginner 👁 7 views 📅 Jun 15, 2026

VirtualBox fails with 'kernel driver not installed' on Linux. This guide walks from a quick module reload to a full reinstall. Most people are fixed in under a minute.

30-Second Fix: Reload the VirtualBox Kernel Modules

This error usually means the VirtualBox kernel modules aren't loaded, or they got kicked out after a kernel update. Let's start with the simplest thing: reload them manually.

  1. Open a terminal.
  2. Run:
    sudo modprobe vboxdrv
  3. Check if it's loaded:
    lsmod | grep vboxdrv

If you see output like vboxdrv in the list, try launching your VM again. If it works — great, you're done. If not, move on.

Why this fails sometimes: The module might be blocked by Secure Boot, or the kernel version changed and the module isn't compiled for it. That's what we'll tackle next.

5-Minute Fix: Check Secure Boot and Sign the Modules

If you're on Ubuntu 20.04+ or any distro with Secure Boot enabled, VirtualBox's unsigned modules won't load. The error rc=-1908 often hides this. Here's the fix.

  1. Check Secure Boot status:
    mokutil --sb-state
    If it says SecureBoot enabled, you have two options:
  2. Option A (easier): Disable Secure Boot in BIOS/UEFI. Reboot, enter setup (usually F2, F10, or Del), find Secure Boot, disable it, save and exit. Reboot, and try running VirtualBox again.
  3. Option B (keep Secure Boot): Sign the VirtualBox modules with Machine Owner Key (MOK).
    First, install the signing tools:
    sudo apt install mokutil
    Then generate a key and sign the module (this is distro-specific, but the general pattern):
    sudo -i
    openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=VirtualBox/"
    sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vboxdrv)
    Then enroll the key:
    sudo mokutil --import MOK.der
    Reboot, you'll be prompted to enroll the key (choose 'Yes'), then try VirtualBox again.

Real-world trigger: This happens most often after a BIOS update that re-enables Secure Boot, or on a fresh install of Ubuntu 22.04 LTS. I've seen it bite people who just updated their firmware.

15-Minute Fix: Rebuild VirtualBox Kernel Modules from Scratch

If the above didn't work, your kernel modules are probably missing or corrupted. This can happen after a kernel update (like from 5.15 to 6.2) where the VirtualBox module wasn't rebuilt automatically. Let's rebuild them.

  1. First, remove the broken modules:
    sudo modprobe -r vboxdrv vboxnetadp vboxnetflt
  2. Reinstall VirtualBox DKMS (Dynamic Kernel Module Support) so it auto-rebuilds on kernel updates:
    sudo apt install --reinstall virtualbox-dkms
  3. Now trigger a rebuild for your current kernel:
    sudo dkms install virtualbox/$(dpkg -l virtualbox-dkms | tail -1 | awk '{print $3}') -k $(uname -r)
    (If that fails, try sudo dpkg-reconfigure virtualbox-dkms)
  4. Load the module:
    sudo modprobe vboxdrv
  5. Verify:
    lsmod | grep vboxdrv

If you still get rc=-1908, check the kernel log for clues:

dmesg | tail -20

Look for lines like vboxdrv: disagrees about version of symbol — that means the module was compiled for a different kernel than the one you're running. Reboot, then rerun the DKMS steps. I've seen this happen when people manually installed a newer kernel and VirtualBox wasn't rebuilt.

Bleeding-Edge Distros (Arch, Fedora Rawhide)

If you're on a rolling release, the VirtualBox package in your repos may lag behind the latest kernel. In that case, you might need to install VirtualBox from the official Oracle repo or use the virtualbox-host-modules-arch package on Arch. Check the Arch Wiki — it's your best friend here.

Still Stuck?

If none of this works, try purging and reinstalling VirtualBox entirely:

sudo apt purge virtualbox*
sudo apt autoremove
sudo reboot
# Then reinstall from official repo

This nukes everything, including config files. Back up your VMs first. I've had to do this twice in five years — it's rare, but it works when all else fails.

Pro tip: After you fix it, run sudo update-initramfs -u (Ubuntu/Debian) or rebuild your initramfs (on Fedora: sudo dracut -f). That ensures the modules load early at boot, so you never see this error again after a reboot.

Was this solution helpful?