【解決方法】MacのOSをmojaveアップグレードしたらvagrantがエラーになり動かなくなった時の対処

VagrantMacVirtualBoxHomebrewエラー解消
【解決方法】MacのOSをmojaveアップグレードしたらvagrantがエラーになり動かなくなった時の対処
Memo
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

MacのOSをmojaveアップグレードしたらvagrantがエラーになり動かなくなってしまったため
解決のための手順をメモしました。

環境

  • Mac 10.14
  • Vagrant 2.0.3
  • VirtualBox 5.2.12 r122591

発生したエラー

/dev/vboxnetctlのファイルが見つからなかったり色々なエラーが発生しています。

$ vagrant up
==> vagrant: A new version of Vagrant is available: 2.1.5!
==> vagrant: To upgrade visit: https://www.vagrantup.com/downloads.html

Bringing machine 'default' up with 'virtualbox' provider...
==> default: Clearing any previously set forwarded ports...
==> 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 94 of file VBoxManageHostonly.cpp

VirtualBoxを再インストールして解決

VirtualBoxを再インストールを行い解決しました。

VirtualBoxのバージョンの比較

  • 元のバージョン 5.2.12 r122591
  • アップデート後のバージョン 5.2.18 r124319

VirtualBoxの再インストール手順

Homebrewでインストールしていたためbrewコマンドで再インストールを実施しています。

VirtualBoxをアンインストール

brewコマンドでアンインストールします。

terminal
$ brew cask uninstall virtualbox

VirtualBoxを再インストール

brewコマンドで再インストールします。

terminal
$ brew cask install virtualbox

Xcodeのエラーが発生

ここでまたエラーが発生。

xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
Error: Failure while executing; `git config --local --replace-all homebrew.private true` exited with 1.

Xcodeをインストール

xcode-selectコマンドでインストール

terminal
$ xcode-select --install

VirtualBoxを再インストール

brewコマンドで再インストールします。

terminal
$ brew cask reinstall virtualbox

インストール完了

無事インストールが完了しました。

installer: Package name is Oracle VM VirtualBox
installer: Installing at base path /
installer: The install was successful.
🍺  virtualbox was successfully installed!

Vagrantを再起動して成功

vagrant up コマンドでVagrantを再起動します。

terminal
$ vagrant up ... ==> default: Checking for guest additions in VM... ==> default: Configuring and enabling network interfaces... default: SSH address: 127.0.0.1:2222 default: SSH username: vagrant default: SSH auth method: private key ==> default: Exporting NFS shared folders... ==> default: Preparing to edit /etc/exports. Administrator privileges will be required... ==> default: Mounting NFS shared folders... ==> default: Mounting shared folders... default: /vagrant => /Users/yuki.hayakawa/workspace/sakura ==> default: Machine already provisioned. Run `vagrant provision` or use the `--provision` ==> default: flag to force provisioning. Provisioners marked to run always will still run.

無事起動することができました。

終わりに

最後までご覧いただきありがとうございます。
この記事では【解決方法】MacのOSをmojaveアップグレードしたらvagrantがエラーになり動かなくなった時の対処について紹介させていただきました。

これからも皆様の開発に役立つ情報を提供していきたいと考えています。
今後ともよろしくお願いいたします。