VagrantのベースBOXから作ったUbuntuデスクトップ環境のGuest Addtionsを再インストールする手順
本記事では、VagrantのベースBOXから作成したVirtualBoxのUbuntuデスクトップ環境にインストールされているGuest Additionsを再インストールする方法を書きます。
<<お知らせ(2022/09/17)>>
本記事の内容は Ubuntu 18.04 LTS 日本語デスクトップ環境をもとに書いています。
もう少し汎用的な手順で書き直した記事
をアップしましたので、よろしかったら参照してください。
【目次】
[1]はじめに
VirtualBoxのGuest Additionsは、共有フォルダ、時刻同期、マウスポインタの統合、クリップボード共有、画面リサイズ等々、ホストOSとゲストOSを密に統合して使いやすくしてくれる機能を提供してくれます。
- Guest Additions(https://www.virtualbox.org/manual/ch04.html)
VagrantのベースBOXから作成したVirtualBoxの仮想マシンには、このGuest Additionsが予めインストールされていると思います。(VagrantのVirtualBox版ベースBOXの要件として、VirtualBox Guest Additionsのインストールが必要となっています。)
- Creating a Base Box(https://www.vagrantup.com/docs/providers/virtualbox/boxes)
しかし、ゲストOSをバージョンアップしたり、ホスト側のVirtualBoxをバージョンアップした場合など、再インストールが必要な場合もあります。
あるいは、Guest Additionsが提供する機能(例えば画面リサイズや共有フォルダなど)がうまく動作しない場合などに、再インストールして試してみたい場合もあるかと思います。(特に、ソフトウェアのアップデートを行ったときなど)
ところで、Vagrantには、ホストのGuest AdditionsをゲストOSに自動的にインストールしてくれるプラグインがあります。
- vagrant-vbguest(https://github.com/dotless-de/vagrant-vbguest)
このプラグインについては、ネット上にも多くの情報、ノウハウが公開されていますのでここでは割愛します。
プラグインを利用すると便利な場合が多いと思いますが、例えば、余分な依存関係を増やしたくないとか、オーバースペックな場合もあると思います。
そこで、本記事では手動でインストールする手順について書きます。
なお本記事は、
で作成した仮想マシンで動作確認していますので、以下ではVagrantのベースBOXから構築したUbuntuのデスクトップ環境で手順を説明します。
[2]インストール手順
VirtualBoxのGuest Additionsは、「VBoxGuestAdditions.iso」というCD-ROMイメージで提供されています。(このファイルは、VirtualBoxがインストールされているディレクトリにあります。)
インストール方法は、このCD-ROMを挿入してプログラムを実行するだけなのですが、インストールに必要なパッケージが揃っていないとインストールに失敗します。(実行結果のメッセージを見ても、成功したのか失敗したのかが分かりにくいです。)
このため、インストールに必要なパッケージを揃えてからインストーラーを実行する必要があります。また、CD-ROMイメージ(VBoxGuestAdditions.iso)の準備手順はいろいろと考えられますので、以下の手順は例として考えて頂ければと思います。
(1)光学ドライブの確認
「VBoxGuestAdditions.iso」はCD-ROMイメージですので、仮想マシンに光学ドライブがないと利用できません。
そこで、Oracle VM VirtualBoxマネージャーを起動して、仮想マシンの「設定/ストレージ」のコントローラー IDE Controllerの項目を確認します。
コントローラー IDE Controllerの下に光学ドライブがあれば以下の手順は不要です。
もし、上図のように、コントローラー IDE Controllerの下に何もない(光学ドライブがない)場合は、以下の手順に従って、光学ドライブを追加します。
①仮想マシンのシャットダウン
仮想化マシンが実行中の場合は、仮想マシンをシャットダウン(vagrant haltコマンドを実行)します。
②仮想マシンに光学ドライブを追加
Oracle VM VirtualBoxマネージャーを起動して、仮想マシンの「設定/ストレージ」のコントローラー IDE Controllerの右にある「光学ドライブの追加」ボタンをクリックします。
「光学ディスク選択」画面が表示されたら、右下の「空のままにする」ボタンをクリックします。
下図のように、コントローラー IDE Controllerの下に、「空」が追加されます。
これで、仮想マシンに光学ドライブが追加されましたので、「VBoxGuestAdditions.iso」を利用する準備が整いました。
③仮想マシンを起動
設定画面を閉じて、仮想マシンを起動(vagrant upコマンドを実行)します。
(2)インストールに必要なパッケージのインストール
Guest Additionsのインストールに必要なパッケージ(Linuxカーネルヘッダーと基本的な開発ツール)をインストールします。
Ubuntuの場合、ターミナルを開いて以下のコマンドを実行します。
sudo apt-get update
sudo apt-get install linux-headers-$(uname -r) build-essential dkms
(3)Guest Additionsをインストールして再起動
仮想マシンのデバイスメニューを開いて「Guest Additions CD イメージの挿入...」をクリックします。
以下のようなメッセージが表示されたら、「実行する」をクリックして、インストールを行います。
(下図はUbuntu 18.04 LTSの表示ですが、Ubuntu 20.04 LTSでも同様のメッセージが表示されますので、「実行」をクリックします。)
実行すると、認証を聞いてきますので、パスワードを入れて継続します。
すると、ターミナル画面が表示されて、以下のように進みます。
Verifying archive integrity... All good.
(途中省略)
VirtualBox Guest Additions: Running kernel modules will not be replaced until
the system is restarted
Press Return to close this window...
処理が終了すると、メッセージにある通りカーネルモジュールを置き換えるために、仮想マシンを再起動(vagrant reload)します。
以上でインストール完了です。
(補足)光学ドライブを除去または空にしておきたいとき
最初の手順で空の光学ドライブを追加した場合、元の状態(光学ドライブがない状態)に戻しておきたい場合は、以下の手順で光学ドライブを除去できます。また、光学ドライブを除去するのではなく、空の状態にしておくこともできます。
①光学ドライブを除去する手順
まず、仮想マシンが実行中の場合はシャットダウン(vagrant haltコマンド)します。
次に、Oracle VM VirtualBoxマネージャーを起動して、仮想マシンの「設定/ストレージ」のコントローラー IDE Controllerの項目を確認すると、「VBoxGuestAdditions.iso」が表示されていると思います。これを右クリックすると「割り当てを除去」メニューが表示されますので、これをクリックします。
すると、確認メッセージが表示されますので、「除去」をクリックします。
以上で光学ドライブの除去が完了しました。
②光学ドライブを空する手順
仮想マシンを実行中の場合は、仮想マシンのウィンドウの「デバイス」メニューをクリックすると「光学ドライブ」があると思います。ここをクリックするとサブメニューが開き、一番下に「仮想ドライブからディスクを除去」という項目がありますので、これをクリックします。これで、光学ドライブが空になります。
もう一つの方法は、仮想マシンをシャットダウンして、①の「光学ドライブを除去する手順」を実行します。続いて最初の手続きと同様に空の光学ドライブを追加します。
コメント
コメントを投稿