macOS Big Sur + VirtualBox の Kernel driver not installed (rc=-1908) を解決する方法

はじめに

実務にて、macOS Big Sur にソフトウェアアップデート後、最新版の VirtualBox に OVA(Open Virtual Appliance)ファイルをインポートして仮想マシンを起動すると「カーネルドライバーがインストールされていません。」、「仮想マシンのセッションを開けませんでした。」というエラーが発生、それを解決した情報になります。

環境

  • macOS Big Sur 11.5.2
  • VirtualBox 6.1.26

解説

結論から言うと、システム環境設定の「セキュリティとプライバシー」の「一般」タブにある「ダウンロードしたアプリケーションの実行許可」に表示されている Oracle America, Inc. のシステムソフトウェアの読み込みを許可して、Mac を再起動、最新版の VirtualBox を再インストールすることで解決しました。

過去に上記の方法で解決しているにも関わらずエラーが再発している場合は、パソコンを再起動してインポートした仮想マシンを起動すると解決することがあります。

エラーの原因ですが、VirtualBox インストール時に下記アラートを無視して進めたことでインストールに失敗しているからです。

このアラートは Mac が Oracle 製品を初めてインストールする際に表示されます。

OK をクリックしないで、アラートが表示されてから 30 分以内にセキュリティ環境設定を開いて拡張機能の読み込みを許可し、Mac を再起動しましょう。読み込みを許可する設定が表示されない場合は、セキュリティ環境設定を開き直してみましょう。

VirtualBox を再インストールする方法ですが、下記のリンクからダウンロードした dmg ファイルを開き、VirtualBox_Uninstall.tool をクリックします。

下記のようなアラートが表示されるので、システム環境設定の「セキュリティとプライバシー」の「一般」タブから、VirtualBox_Uninstall.tool の実行を許可をしましょう。

再度、VirtualBox_Uninstall.tool を実行すると、ターミナルが起動してアンインストールしても良いかと聞かれるので Yes 又は y と入力します。

アンインストールができました。

あとは、パッケージファイル(VirtualBox.pkg)をインストールするだけです。拡張機能の読み込みを許可した後は Mac の再起動をしましょう。

それでも解決できない場合は、下記のような間違いがないか確認してください。

  1. ダウンロード元が Oracle の 公式サイト ではなく、インストールした VirtualBox のバージョンが古かった。
  2. セキュリティ環境設定で拡張機能の読み込みを許可した後、自分は大丈夫だろうという理由で Mac を再起動させずに VirtualBox のインストールを進めた。

また、VirtualBox がクラッシュしてしまう場合は、起動時に NVRAM リセットを試してみましょう。

以上です。

おわりに

ターミナルからコマンドでカーネルドライバーをインストールしたり、リカバリーモードからシステム整合性保護(System Integrity Protection)を一時的に無効化させてから VirtualBox を再インストールする解決法もありますが、プログラミング初心者には優しくないので説明を省略しています。

開発環境構築は一筋縄では行かないですよね。

参考

  1. Chapter 2. Installation Details