[Vagrant] GuestAdditions versions on your host (x.x.x) and guest (y.y.y) do not match.の解決方法

未分類
スポンサーリンク

前置き

MacのOSをアップデートして、いままで動作していた仮想環境が、予想通り動かなくなってました。
virtualBoxも更新せざるを得なくなり、Vagrantのバージョンもそれに合わせないといけない模様。

virtualBox、Vagrantそれぞれ最新を落として、
Vagrantのバージョン問題は「vbguestプラグイン」で解決!と踏んでいたのが甘かった。。

# vagrant plugin install vagrant-vbguest

上記実行後、vagrantを立ち上げるも、GuestAdditionsのdo not matchが発生。

# vagrant up
・
・
GuestAdditions versions on your host (7.1.4) and guest (5.2.44) do not match.
・
・

このままでも一応使えなくはないんだけど、このエラーのせいでシンクフォルダ(ローカルのプロジェクトフォルダを仮想環境上のdirに同期)が失敗するそうなので、直すしかない。。

解決方法

ゲスト側のGuest Additionsのバージョンを、
ホスト側のGuest Additionsのバージョンに合わせる対応をしていきます。

1) 仮想マシン(ゲストOS)にログイン

# vagrant ssh

2) GuestAdditionsのイメージを取得

# curl -OL http://download.virtualbox.org/virtualbox/x.x.x/VBoxGuestAdditions_x.x.x.iso
補足

「x.x.x」の箇所は各々の状況に合わせて変えてください。ここには「GuestAdditions versions ~ do not match.」ででた「on your host」側のバージョンの数値を入れます。
※私の場合は「7.1.4」となる。

3) ISOファイルのマウント先ディレクトリを作成し、ISOファイルをマウント

# sudo mkdir /VBoxGuestAdditions
# sudo mount -o loop,ro VBoxGuestAdditions_x.x.x.iso /VBoxGuestAdditions

4) インストールを実行

# sudo sh /VBoxGuestAdditions/VBoxLinuxAdditions.run

5) アンマウント

# sudo umount /VBoxGuestAdditions

6) マウント先ディレクトリを削除して、ISOファイルも削除

# sudo rmdir /VBoxGuestAdditions
# rm VBoxGuestAdditions_x.x.x.iso

7) 仮想マシン(ゲストOS)からログアウト

# exit

8) ホストOSで、Vagrant再起動

# vagrant reload

これでバージョン違いも解決して、シンクフォルダもできました!
まさか、ゲストエディションのバージョン差異がシンクフォルダの挙動に影響するとは。。。

タイトルとURLをコピーしました