Ubuntu上でのVirtualBoxで仮想マシンを立ち上げようとしたときに Kernel driver not installed (rc=-1908) のエラーが出た場合の対処方法

自分が頻回に遭遇するエラーなので、備忘録として載せておきます。

Ubuntuでカーネルをアップデートすると、VirtualBoxを起動するときに、以下のエラーが出ます。

このエラーがでたときに、このまま

sudo /sbin/vboxconfig

としてもエラーが出て解決しません。(細かいエラーを保存し忘れました)

解決方法はシンプルで、新しいカーネルにあったカーネルヘッダーをインストールすることです。

以下に具体的な解決法を示します。

  1. カーネルのバージョンを確認
  2. $ uname -r
    4.15.0-22-generic
    

    今の場合、4.15.0-22-generic であることがわかります

  3. 該当するバージョンのカーネルヘッダーをインストール
  4. 上記を賢く使ってインストールします。

    $ sudo apt update
    $ sudo apt install linux-headers-$(uname -r)
    

    これでカーネルヘッダーがインストールされます

  5. /sbin/vboxconfig の実行
  6. $ sudo /sbin/vboxconfig 
    vboxdrv.sh: Stopping VirtualBox services.
    vboxdrv.sh: Building VirtualBox kernel modules.
    vboxdrv.sh: Starting VirtualBox services.
    

    これで無事にVirtualBoxの仮想マシンが起動するようになります。