Vagrant の Box の Guest Additions を最新化する方法

投稿者 : OSCA

 本稿では Vagrant の Box (ゲストマシン) にインストールされている Guest Additions を最新化する方法について解説します。

VirtualBox Guest Additions とは?

 VirtualBox Guest Additions とは、VirtualBox 上に作成したゲストマシンにインストールするソフトウェアで、ホストマシンとゲストマシンとの間での操作を便利にしてくれる機能を持っています。 VirtualBox Guest Additions をゲスト OS にインストールすると、次のような事が可能になります。

  • クリップボードの共有
  • フォルダの共有
  • 自動ログイン
  • ホストマシンとの時刻同期

などなどの機能がゲストマシンに追加されます。

なぜ Box の Guest Additions を最新化する必要があるのか?

 さて、なぜ Box の Guest Additions を最新化する必要があるのでしょうか? そりゃぁ、利用しているソフトウェアは最新版を使った方が便利だということもありますが、それよりも重要な理由があります。 Vagrant を利用する際にほとんどの方が VirtualBox をインストールしていると思いますが、インストールの際には最新の VirtualBox をインストールしますよね。 しかしインターネットで配布されている Box には、最新の VirtualBox に対応していない Guest Additions をインストールした状態の Box があるためです。 利用している Box が1年や2年も前に作られたものである場合、その当時の VirtualBox を利用して作られている訳ですがら、最新の VirtualBox が想定している Guest Additions を搭載していないことがあるわけですね。

vagrant-vbguest プラグインとは?

 そこで利用したいのが vagrant-vbguest プラグイン (公式ページ) です。 vagrant-vbguest プラグインは、利用している VirtualBox のバージョンとゲストマシンにインストールされている Guest Additions のバージョンを調べて、ゲストマシンにインストールされている Guest Additions のバージョンが古ければアップデートしてくれる機能を持ったプラグインです。

vagrant-vbguest プラグインのインストール

 それでは vagrant-vbguest プラグインをインストールしてみましょう。 次のように vagrant plugin install コマンドでインストールできます。

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

 vagrant-vbguest をインストールした事により、仮想マシンを vagrant up で起動した際に、次のように Guest Additions のバージョンの違いをチェックして、新しいバージョンの Guest Additions が必要であればインストールを行ってくれます。

$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
(略)
GuestAdditions versions on your host (4.3.22) and guest (4.3.14) do not match.
(略)
Copy iso file /Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso into the box
/tmp/VBoxGuestAdditions.iso
mount: /dev/loop0 is write-protected, mounting read-only
Installing Virtualbox Guest Additions 4.3.22 - guest version is 4.3.14
Verifying archive integrity... All good.
Uncompressing VirtualBox 4.3.22 Guest Additions for Linux............
VirtualBox Guest Additions installer
Removing installed version 4.3.14 of VirtualBox Guest Additions...
Copying additional installer modules ...
Installing additional modules ...
(以下略)

 インターネット接続にプロキシを経由する必要がある会社内ネットワークなどで利用する場合、予めプロキシ経由でインターネットに接続できるようにしておく必要があります。 別稿「vagrant-proxyconf で行う ゲストOSへのかんたんProxy設定」で紹介している vagrant-proxyconf プラグインなどを利用して予めプロキシの設定をしておくようにしてください。

おわりに

 本稿では Vagrant の Box の Guest Additions を最新化する方法を vagrant-vbguest を利用して解説しました。 Vagrant をインストールした際には是非導入しておきたいプラグインです。

Vagrant入門へ戻る

著者 : OSCA

OSCA

 初級WEBエンジニアです。最近は Android, iOS, WEBアプリの作成に力を入れています。 個人として何か一つでも世の中の多くの人に使ってもらえるアプリを作ろうと日々奮闘中です。