VagrantのboxのGuest Additionsのアップデート方法

  • 239
    いいね
  • 1
    コメント
この記事は最終更新日から1年以上が経過しています。

vagrant upしたときに

[default] The guest additions on this VM do not match the installed version of
VirtualBox! In most cases this is fine, but in rare cases it can
cause things such as shared folders to not work properly. If you see
shared folder errors, please update the guest additions within the
virtual machine and reload your VM.

Guest Additions Version: 4.2.18
VirtualBox Version: 4.3

のようなメッセージが表示された場合、ゲスト側にインストールされているGuest Additionsが古い。
これをバージョンアップする方法について簡単に解説する。

インストール

まずは、Vagrantのプラグイン

vagrant-vbguest
https://github.com/dotless-de/vagrant-vbguest

をインストールする。

$ vagrant plugin install vagrant-vbguest
Installing the 'vagrant-vbguest' plugin. This can take a few minutes...
Installed the plugin 'vagrant-vbguest (0.9.0)'!

こんな感じでインストールが完了する。

Guest Additionsのアップデート

以下のコマンドで、Guest Additionsをアップデートする。

$ vagrant vbguest

しばらくするとアップデートが完了する。

Installing the Window System drivers[FAILED]
(Could not find the X.Org or XFree86 Window System.)
An error occurred during installation of VirtualBox Guest Additions 4.3.2. Some functionality may not work as intended.

といったメッセージが表示されることがあるが、Xを使っていない場合は無視してよさそう。

インストールされたバージョンの確認

$ vagrant vbguest --status
GuestAdditions 4.3.2 running --- OK.

以上で、vagrant upしたときにwarningが出るようなことはなくなる(はず)。

Guest Additionsの機能についてはこちらを参考にしてください。

Chapter 4. Guest Additions
http://www.virtualbox.org/manual/ch04.html

Vagrantfileに記述する

vbguestプラグインをインストールしてある状態で、Vagrantfileにvbguestプラグイン用の設定を記述することができます。

Vagrant.configure("2") do |config|
  config.vbguest.auto_update = false
  config.vbguest.no_remote = true
end

この場合は

  • config.vbguest.auto_update vagrant up時に自動的にGuest Additionsのアップデートを行わない(trueだと自動アップデートする)
  • config.vbguest.no_remote Guest Additionsのisoファイルをリモートからダウンロードしない。

という設定になります。

詳細は https://github.com/dotless-de/vagrant-vbguest/blob/master/Readme.md に記載されています。