VirtualBoxというとWindowsにインストールしてマウス操作で仮想マシンを構築するのが一般的だと思います。本日はLinuxのcuiな環境にVagrantとVirtualBoxをインストールします。インストール後はWindowsで比較的容易に仮想マシンを立ち上げることができますが、Linuxではコマンドによる操作となります。
この記事ではubuntu24.04にVagrantとVirtualBox7をインストールする方法と古い記事が存在します。
VirtualBoxだけでもコマンドによる仮想マシンの制御は可能ですが、いかんせんコマンドが複雑で戸惑うこともあります。Vagrantはこの困難なコマンドを楽にしてくれる便利なツールですのでセットでインストールします。

まずはVagrantからインストールします。上記の公式ページにインストール方法が記載してあります。ubuntu22.04にインストールします。
curl -fsSL https://apt.releases.hashicorp.com/gpg | apt-key add -
apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
apt-get update && apt-get install vagrant
記事を更新していたら以下のコマンドに変更になっていたので、変更になったコマンドを入力します。実践記録は記事の一番下に記述します。
wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update && sudo apt install vagrant
サイト更新前のスクショ

サイトがリニューアル後のスクショ

次はVirtualBoxをインストールします。
Linux distributionsのリンクを探してクリックします。インストールするOSの上で右クリックしてリンクを取得します。あれからUbuntu24.04対応でVirtualBoxのバージョンが7になったのでこちらをインストールします。もちろんUbuntuのバージョンも24.04を採用したインストール方法を紹介します。
過去のスクショ

最新のスクショ

Ubuntu24.04にVagrantとVirtualBox7をインストールをしたい方は、この記事はスキップしてください。
SSH接続した黒い画面でコマンド入力をします。以下はubuntu22.04にVirtualBox6をインストールする記事ですが、消すのがもったいないので過去の遺物として残しておきます。エラー内容も後で見返すと学習になりことがあります。最新の記事は下の方に記します。
wget コピーして取得したURL
dpkg -i ダウンロードしたファイル名

パッケージのインストールでエラーが発生しました。
root@ubuntu2204:/tmp# dpkg -i virtualbox-6.1_6.1.34-150636.1~Ubuntu~jammy_amd64.deb
以前に未選択のパッケージ virtualbox-6.1 を選択しています。
(データベースを読み込んでいます … 現在 138722 個のファイルとディレクトリがインストールされています。)
virtualbox-6.1_6.1.34-150636.1~Ubuntu~jammy_amd64.deb を展開する準備をしています …
virtualbox-6.1 (6.1.34-150636.1~Ubuntu~jammy) を展開しています…
dpkg: 依存関係の問題により virtualbox-6.1 の設定ができません:
virtualbox-6.1 は以下に依存 (depends) します: libqt5core5a (>= 5.15.1) …しか し:
パッケージ libqt5core5a はまだインストールされていません。
virtualbox-6.1 は以下に依存 (depends) します: libqt5gui5 (>= 5.14.1) | libqt5gui5-gles (>= 5.14.1) …しかし:
パッケージ libqt5gui5 はまだインストールされていません。
パッケージ libqt5gui5-gles はまだインストールされていません。
virtualbox-6.1 は以下に依存 (depends) します: libqt5opengl5 (>= 5.0.2) …しか し:
パッケージ libqt5opengl5 はまだインストールされていません。
virtualbox-6.1 は以下に依存 (depends) します: libqt5printsupport5 (>= 5.0.2) …しかし:
パッケージ libqt5printsupport5 はまだインストールされていません。
virtualbox-6.1 は以下に依存 (depends) します: libqt5widgets5 (>= 5.15.1) …し かし:
パッケージ libqt5widgets5 はまだインストールされていません。
virtualbox-6.1 は以下に依存 (depends) します: libqt5x11extras5 (>= 5.6.0) …しかし:
パッケージ libqt5x11extras5 はまだインストールされていません。
virtualbox-6.1 は以下に依存 (depends) します: libsdl1.2debian (>= 1.2.11) …しかし:
パッケージ libsdl1.2debian はまだインストールされていません。
virtualbox-6.1 は以下に依存 (depends) します: libxt6 …しかし:
パッケージ libxt6 はまだインストールされていません。
dpkg: パッケージ virtualbox-6.1 の処理中にエラーが発生しました (–install):
依存関係の問題 – 設定を見送ります
hicolor-icon-theme (0.17-2) のトリガを処理しています …
shared-mime-info (2.1-2) のトリガを処理しています …
処理中にエラーが発生しました:
virtualbox-6.1
インストールされていないと表示されたツールをインストールします。
apt install libqt5core5a libqt5gui5-gles libqt5opengl5 libqt5printsupport5 libqt5widgets5 libqt5x11extras5 libsdl1.2debian libxt6
エラーが出てインストールできません。指示通りのコマンド入力をします。
E: 未解決の依存関係です。’apt –fix-broken install’ を実行してみてください (または解法を明示してください)。
apt --fix-broken install
次のような問題が発生しましたが、続けてVirtualBoxのインストールをします。
There were problems setting up VirtualBox. To re-start the set-up process, run
/sbin/vboxconfig
as root. If your system is using EFI Secure Boot you may need to sign the
kernel modules (vboxdrv, vboxnetflt, vboxnetadp, vboxpci) before you can load
them. Please see your Linux system’s documentation for more information.
dpkg -i virtualbox-6.1_6.1.34-150636.1~Ubuntu~jammy_amd64.deb
同じ問題が発生しましたがバージョンの確認をします。
There were problems setting up VirtualBox. To re-start the set-up process, run
/sbin/vboxconfig
as root. If your system is using EFI Secure Boot you may need to sign the
kernel modules (vboxdrv, vboxnetflt, vboxnetadp, vboxpci) before you can load
them. Please see your Linux system’s documentation for more information.
VBoxManage -v
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
available for the current kernel (5.15.0-33-generic) or it failed to
load. Please recompile the kernel module and install it by
sudo /sbin/vboxconfig
You will not be able to start VMs until this problem is fixed.
6.1.34r150636
警告が出たので指示通りのコマンドを入力します。
/sbin/vboxconfig
root@ubuntu2204:/tmp# /sbin/vboxconfig
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Starting VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
This system is currently not set up to build kernel modules.
Please install the gcc make perl packages from your distribution.
This system is currently not set up to build kernel modules.
Please install the gcc make perl packages from your distribution.
There were problems setting up VirtualBox. To re-start the set-up process, run
/sbin/vboxconfig
as root. If your system is using EFI Secure Boot you may need to sign the
kernel modules (vboxdrv, vboxnetflt, vboxnetadp, vboxpci) before you can load
them. Please see your Linux system’s documentation for more information.
エラーが発生しました。ここでも表示されたことに従い、不足しているモジュールをインストールします。
apt install gcc make perl
インストールが完了した後で、先ほどエラーが出たコマンドを再度入力します。今度はうまくいきました。
/sbin/vboxconfig
VBoxManage -v

VirtualBox拡張パックのインストールもします。同様にして拡張パックのリンクを取得してファイルをダウンロードします。VirtualBox専用のコマンドを使用して拡張パックをインストールします。
wget コピーしたURL
VBoxManage extpack install ダウンロードしたファイル名

せっかくなのでなにか試してみましょう。
一から構築するのは面倒なので、予め用意されたものを検索して使用することができます。Vagrant Boxesから好きなものを探すことができます。ここではLaravelの環境をVirtualBoxに作成します。Laravelの環境がすでに構築してあるので楽です。

わかりやすいようにWindowsにインストールしたVagrantとVirtualBoxで確認します。まずは適当なフォルダを作成します。簡単のためCドライブ直下にtestというディレクトリを作成しました。次にコマンドプロンプトを起動して作成したフォルダに切り替えます。
cd\
cd test
このフォルダにいる状態でVagrant Boxesにあったコマンドを入力します。
vagrant init laravel/homestead
するとコマンドを実行したフォルダに「Vagrantfile」が作成されているはずです。少しこのファイルを編集することにします。メモリサイズを4GBにして保存します。他にも色々設定できますが、メモリサイズだけ変更することにしました。早速仮想マシンを立ち上げてみましょう。

vagrant up
VirtualBoxとコマンドプロンプトを同時に確認すると、コマンド入力したことがVirtualBoxに反映されていることが確認できます。SSH接続を他のソフトを使用して行うこともできますが、Vagrantのコマンドでも仮想マシンに入ることができます。

vagrant ssh
他にも便利なVagrantのコマンドが用意されていますし、設定ファイルがあるので比較的容易に仮想マシンを作成できると思います。
Ubuntu24.04にVagrant及びVirtualBox7をインストール
Ubuntu 24.04 に Vagrant をインストールする方法
1. Vagrant とは?
まず、Vagrant とは何かを簡単に説明します。Vagrant は、仮想マシンの設定や管理を簡単にするためのツールです。複雑なコマンドを覚える必要がなく、簡単なコマンドで仮想マシンを立ち上げることができます。
2. 前提条件
Vagrant をインストールするには、Ubuntu 24.04がインストールされていることが前提です。また、インターネットに接続されている必要があります。
3. インストール手順
まず、Vagrantのインストールに必要な準備をします。以下の手順を順番に実行してください。
3.1 GPGキーのインストール
GPGキーは、ソフトウェアの配布元を確認し、改ざんされていないことを保証するために使用されます。以下のコマンドを実行して、VagrantのGPGキーをインストールします。
wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
このコマンドは、HashiCorp(Vagrantを開発している会社)の公式GPGキーをダウンロードし、/usr/share/keyrings
フォルダに保存します。
3.2 リポジトリの追加
次に、Vagrantをインストールするためのリポジトリを追加します。リポジトリとは、ソフトウェアのパッケージが保管されている場所のことです。
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
このコマンドは、Vagrantのリポジトリをシステムに追加し、/etc/apt/sources.list.d
フォルダにリストとして保存します。
3.3 パッケージリストの更新
次に、パッケージリストを更新します。これは、新しく追加したリポジトリから最新の情報を取得するために必要です。
sudo apt update
このコマンドを実行すると、システムがリポジトリにある最新のパッケージリストを取得します。
3.4 Vagrantのインストール
最後に、Vagrantをインストールします。
sudo apt install vagrant
このコマンドで、Vagrantがシステムにインストールされます。インストールが完了すると、Vagrantを利用して仮想マシンを管理できるようになります。
3.5 Vagrantのバージョン確認
インストールが正常に完了したかどうかを確認するために、以下のコマンドを実行してVagrantのバージョンを確認しましょう。
vagrant --version
このコマンドを実行すると、インストールされたVagrantのバージョンが表示されます。例えば、Vagrant 2.x.x
といった形式でバージョン番号が表示されれば、インストールが成功したことを確認できます。
Ubuntu 24.04 に VirtualBox 7 をインストールする方法
1. VirtualBox とは?
VirtualBoxは、仮想マシンを作成・管理するための無料のソフトウェアです。これを使うと、異なるOSを仮想環境で動かすことができ、実際のマシンに影響を与えることなく、テストや開発を行うことができます。
2. 前提条件
VirtualBoxをインストールするには、Ubuntu 24.04がインストールされていることが必要です。また、インターネットに接続されていることが前提です。
3. インストール手順
3.1 GPGキーのインストール
まず、VirtualBoxのリポジトリを信頼するために必要なGPGキーをインストールします。GPGキーは、ソフトウェアの配布元を確認し、パッケージが改ざんされていないことを保証します。GPGキーを直接/usr/share/keyrings
に保存し、そこからリポジトリを参照するようにします。
wget -qO- https://www.virtualbox.org/download/oracle_vbox_2016.asc | sudo gpg --dearmor -o /usr/share/keyrings/oracle-virtualbox-archive-keyring.gpg
wget -qO- https://www.virtualbox.org/download/oracle_vbox.asc | sudo gpg --dearmor -o /usr/share/keyrings/oracle-virtualbox-archive-keyring-2.gpg
このコマンドで、VirtualBoxの公式GPGキーをシステムに追加します。また、wget
でダウンロードした公開鍵をそのまま gpg --dearmor
コマンドでバイナリ形式に変換し、/usr/share/keyrings/
フォルダに保存します。
3.2 VirtualBoxのリポジトリを追加
次に、リポジトリを追加します。GPGキーを指定してリポジトリを追加するには、以下のコマンドを使用します。
echo "deb [signed-by=/usr/share/keyrings/oracle-virtualbox-archive-keyring.gpg] https://download.virtualbox.org/virtualbox/debian $(lsb_release -cs) contrib" | sudo tee /etc/apt/sources.list.d/virtualbox.list
このコマンドは、Ubuntuのバージョンに対応したVirtualBoxのリポジトリをシステムに追加します。
3.3 パッケージリストの更新
リポジトリを追加した後、パッケージリストを更新して、最新のパッケージ情報を取得します。
sudo apt update
このコマンドで、システムが新しく追加したリポジトリからパッケージリストを取得します。
3.4 VirtualBox 7 のインストール
次に、VirtualBox 7 をインストールします。
sudo apt install virtualbox-7.0
このコマンドで、VirtualBox 7 がシステムにインストールされます。
3.5 VirtualBox のバージョン確認
インストールが正常に完了したかを確認するために、以下のコマンドでバージョンを確認しましょう。
vboxmanage --version
このコマンドを実行すると、インストールされたVirtualBoxのバージョンが表示されます。7.0.x
というバージョン番号が表示されれば、インストールが成功したことを確認できます。
リポジトリによるインストールが推奨される理由
リポジトリからインストールする方法は、多くの利点があるため、推奨されています。
- 自動更新: リポジトリを使用すると、システムが自動的に最新のパッケージ情報を取得し、インストール済みのソフトウェアを自動で更新できます。
- 依存関係の管理: リポジトリを介してインストールすることで、必要な依存パッケージが自動的にインストールされ、手動でのインストール作業が軽減されます。
- セキュリティ: リポジトリのパッケージはGPGキーで署名されており、改ざんされていないことが保証されています。これにより、セキュリティリスクが低減されます。
リポジトリの重複によるエラーや警告の対処法
リポジトリを追加する際に、同じリポジトリが複数回設定されると、エラーや警告が発生することがあります。これを回避するための対策は以下の通りです。
- 既存のリポジトリリストを確認: 新しいリポジトリを追加する前に、既に同じリポジトリが設定されていないか確認します。
- 重複リストの削除: 万が一、重複するリポジトリが設定されている場合は、古いリストを削除して問題を解消します。
リポジトリの重複によるエラーや警告の対処法
1. 既存のリポジトリリストを確認する
まず、どのリポジトリが既に設定されているかを確認します。/etc/apt/sources.list.d/
ディレクトリ内にあるファイルを一覧表示します。
ls /etc/apt/sources.list.d/
このコマンドで、設定されているリポジトリのリストが表示されます。
2. 重複するリポジトリリストを特定する
リストに同じリポジトリが複数回設定されていないか確認します。たとえば、VirtualBoxのリポジトリが複数のファイルに設定されている場合、削除する必要があります。
3. 重複するリポジトリリストを削除する
重複しているリポジトリリストを削除するには、以下のコマンドを使用します。たとえば、archive_uri-https_download_virtualbox_org_virtualbox_debian-noble.list
というファイルを削除する場合は次のようにします。
sudo rm /etc/apt/sources.list.d/archive_uri-https_download_virtualbox_org_virtualbox_debian-noble.list
削除後に再度パッケージリストを更新します。
sudo apt update
この手順で、リポジトリの重複を解消し、エラーや警告を防ぐことができます。これを知っているとリポジトリの管理が容易になると思います。
Vagrantを使ってVirtualBoxを起動・接続する方法
1. Vagrantの初期化
まず、仮想マシンを作成するディレクトリを準備し、その中でVagrantを初期化します。以下のコマンドを使用して、Vagrantfileを作成します。
mkdir ~/vagrant_project
cd ~/vagrant_project
vagrant init ubuntu/bionic64
このコマンドにより、ubuntu/bionic64
というUbuntu 18.04の仮想マシンを使用するVagrantfileが作成されます。
2. 仮想マシンの起動
次に、仮想マシンを起動します。
vagrant up
このコマンドは、Vagrantfileに基づいて仮想マシンを起動し、必要な場合はVirtualBoxに自動的にダウンロードして構成します。
3. 仮想マシンへの接続
仮想マシンが起動したら、以下のコマンドを使用して仮想マシンにSSHで接続します。
vagrant ssh
このコマンドで、Vagrantが自動的に設定したSSHキーを使って仮想マシンに接続できます。
4. 仮想マシンの停止
作業が完了したら、仮想マシンを停止することができます。
vagrant halt
このコマンドは、仮想マシンをシャットダウンします。
5. 仮想マシンの破棄
仮想マシンが不要になった場合は、以下のコマンドで削除することができます。
vagrant destroy
このコマンドで、仮想マシンのすべてのデータが削除されます。