今までできていたvagrant upコマンドが、急にエラーが発生してVirtualBoxを起動できなくなったので、その時の状況と解決策について説明しています。エラーメッセージは「There was an error while executing `VBoxManage`, a CLI used by Vagrant for controlling VirtualBox. Command: ["hostonlyif", "create"]〜」
※ 本ページはプロモーションが含まれています。
vagrant upコマンドでVirtualBoxのボックスの起動が急にできなくなりました。
コマンド実行時のエラーメッセージです。
$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Clearing any previously set network interfaces...
There was an error while executing `VBoxManage`, a CLI used by Vagrant for controlling VirtualBox. The command and stderr is shown below.
Command: ["hostonlyif", "create"]
Stderr: 0%...
Progress state: NS_ERROR_FAILURE
VBoxManage: error: Failed to create the host-only adapter
VBoxManage: error: VBoxNetAdpCtl: Error while adding new interface: failed to open /dev/vboxnetctl: No such file or directory
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component HostNetworkInterfaceWrap, interface IHostNetworkInterface
VBoxManage: error: Context: "RTEXITCODE handleCreate(HandlerArg *)" at line 95 of file VBoxManageHostonly.cpp
また、Oracle VM VirtualBoxマネージャーアプリでも、ボックスを起動しようとしてもエラーで起動できなくなりました。
エラーが発生した原因についてですが、恐らくmacOSをCatalinaからBig Surにバージョンアップしたあとにエラーが出るようになったので、macOSのバージョンアップが原因かと思います。
◾️環境は以下の通りです。
OS:macOS Catalina(バージョン10.15.5)-> macOS Big Sur(バージョン11.0.1)
Vagrant 2.2.7
VirtualBox6.1.4 -> 6.1.16
上記のエラーを解決するためにやった事を書いていこうと思いますが、先に結論から言ってしまうと、最新のVirtualBox(6.1.16)をインストールして、インストール完了後にセキュリティとプライバシーの一般タブ画面を開いて(システム環境設定->セキュリティとプライバシー)、そこで許可ボタンを押してmacOSを再起動したら、今まで通りにvagrant upでVirtualBoxのボックスを起動できるようになりました。
ここからは解決するためにやった事を詳しく書いていきます。
まずは VirtualBoxのサイトからVirtualBoxの最新のインストーラをダウンロードしてインストールします。1のVirtualBox.pkgアイコンをダブルクリックするとインストーラが起動します。
インストール作業はインストーラに従えばできると思いますが、インストール作業が完了したタイミングで「システム機能拡張がアップデートされました」というメッセージ付きの小さなウインドウが出てきました。
次に、画像の赤枠で囲んだ"セキュリティ"環境設定を開くボタンを押します。すると、セキュリティとプライバシーの設定画面の一般タブが開きます。
セキュリティとプライバシーの設定画面に、「開発元"Oracle America Inc."のシステムソフトウェアがアップデートされました。」というメッセージの右側に許可ボタンがあるので、その許可ボタンを押します。
(許可ボタンが押せない状態なら、左下にある鍵アイコンを押してパスワードを入力して鍵アイコンのロックを外すと、許可ボタンが押せるようになると思います。)
許可ボタンを押すと、再起動を要求されるので再起動します。再起動してvagrant upコマンドを実行してみたら、エラーは発生せずに問題なく起動できるようになりました。あと、VirtualBoxマネージャーアプリ上からでも、ボックスを起動できるようになりました。
エラーを解決するためにやった事は以上になります。最初にこのエラーが発生した時にググって調べたのですが、同じ症状についての報告は英語のサイトばかりで、VirtualBoxとVirtualBoxを最新にインストールするなど書いてありましたが、自分の場合は最新版のVirtualBoxだけをインストールして、セキュリティとプライバシーの設定画面で許可ボタンを押すだけで解決することができました。