VirtualBox7とVagrantをubuntu(CUI)にインストール、アップデート

VirtualBox 7のインストールと既存バージョンの確認

最近、VirtualBox 7がリリースされたので、Vagrantと一緒にインストールしてみます。まず、このPCに古いバージョンのVirtualBoxがインストールされているか確認しましょう。

dpkg -l | grep virtualbox

確認したところ、VirtualBox 6.1がインストールされていました。Windowsと同様に、新しいバージョンをインストールしようと以下のコマンドを実行しました。

sudo apt install virtualbox

しかし、実際にインストールされたのはVirtualBox 7ではなく、6.1のアップデート版でした。このため、公式サイトから最新版をダウンロードしてインストールすることにしました。

公式サイトのURLはこちらです:https://www.virtualbox.org/

ダウンロードしたURLを使って次のコマンドでインストールを行います。

wget [ダウンロードしたURL]
sudo dpkg -i [ダウンロードしたファイル名]

インストール中のエラーとVirtualBoxの削除

次のようなエラーが発生し、VirtualBox 7.0をインストールすることができませんでした。

以前に未選択のパッケージ virtualbox-7.0 を選択しています。
dpkg: virtualbox-7.0 を選択するために virtualbox の削除を考えています …
dpkg: no, cannot proceed with removal of virtualbox (–auto-deconfigure will help):
virtualbox-qt は virtualbox (= 6.1.38-dfsg-3~ubuntu1.22.04.1) に依存 (depends) します
virtualbox は削除されようとしています。

dpkg: virtualbox-7.0_7.0.0-153978~Ubuntu~jammy_amd64.deb が virtualbox-7.0 を含 んでいることを考慮すると:
virtualbox-7.0 は virtualbox と競合 (conflicts) します
virtualbox (バージョン 6.1.38-dfsg-3~ubuntu1.22.04.1) が提供され、導入済み で す。

dpkg: アーカイブ virtualbox-7.0_7.0.0-153978~Ubuntu~jammy_amd64.deb の処理中にエラーが発生しました (–install):
パッケージの競合 – virtualbox-7.0 のインストールは行いません
処理中にエラーが発生しました:
virtualbox-7.0_7.0.0-153978~Ubuntu~jammy_amd64.deb

やはり、古いバージョンのVirtualBoxを削除してからでないと、新しいバージョンをインストールできないようです。以下のコマンドを使用して古いバージョンを削除します。

sudo apt remove --purge virtualbox

VirtualBox 7の再インストールと不足パッケージのインストール

再度、VirtualBox 7をインストールするために以下のコマンドを実行します。

sudo dpkg -i [ダウンロードしたファイル名]

(データベースを読み込んでいます … 現在 146255 個のファイルとディレクトリがインストールされています。)
virtualbox-7.0_7.0.0-153978~Ubuntu~jammy_amd64.deb を展開する準備をしています …
virtualbox-7.0 (7.0.0-153978~Ubuntu~jammy) を展開しています…
dpkg: 依存関係の問題により virtualbox-7.0 の設定ができません:
virtualbox-7.0 は以下に依存 (depends) します: libqt5help5 (>= 5.15.1) …しかし:
パッケージ libqt5help5 はまだインストールされていません。
virtualbox-7.0 は以下に依存 (depends) します: libqt5xml5 (>= 5.0.2) …しかし:
パッケージ libqt5xml5 はまだインストールされていません。

dpkg: パッケージ virtualbox-7.0 の処理中にエラーが発生しました (–install):
依存関係の問題 – 設定を見送ります
hicolor-icon-theme (0.17-2) のトリガを処理しています …
shared-mime-info (2.1-2) のトリガを処理しています …
処理中にエラーが発生しました:
virtualbox-7.0

このエラーは、いくつかの必要なパッケージがインストールされていないために発生しました。不足しているパッケージをインストールするために、以下のコマンドを実行します。

sudo apt install libqt5help5 libqt5xml5

パッケージの依存関係エラーと修正方法

VirtualBox 7のインストール中に、パッケージの依存関係に問題があり、次のようなエラーメッセージが表示されました。

パッケージリストを読み込んでいます… 完了
依存関係ツリーを作成しています… 完了
状態情報を読み取っています… 完了
これらを直すためには ‘apt –fix-broken install’ を実行する必要があるかもしれません。
以下のパッケージには満たせない依存関係があります:
libqt5help5 : 依存: libqt5sql5 (>= 5.3.0) しかし、インストールされようとしてい ません
E: 未解決の依存関係です。’apt –fix-broken install’ を実行してみてください (または解法を明示してください)。

このエラーは、インストールしようとしているパッケージ間で依存関係が解決されていないことを示しています。エラーメッセージに表示されたコマンドを実行して、この問題を修正します。

sudo apt --fix-broken install

VirtualBoxのインストール確認とVagrantのセットアップ

前述のコマンドで依存関係の問題が解決され、その後、再びVirtualBoxのインストールを試みました。今回は無事にインストールが完了したようです。インストールされたVirtualBoxのバージョンを確認するには、次のコマンドを実行します。

VBoxManage -v

このコマンドで、正常にVirtualBox 7がインストールされたことを確認できました。

次に、Vagrantがすでにインストールされていることを前提に、仮想マシンが正常に起動するか確認します。Vagrantのインストール方法については、公式サイトに詳しく記載されています。

公式サイトのURLはこちらです:https://www.vagrantup.com/

Vagrantのインストール手順

一般ユーザーとして作業する場合、sudoを使用してコマンドを実行します。以下のコマンドで、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

Vagrantのバージョン確認と仮想マシンの起動

まず、インストールされたVagrantのバージョンを確認して、正しくインストールされたことを確認しましょう。以下のコマンドを実行します。

vagrant version

コマンドを実行すると、Vagrantのバージョン情報が表示されます。正しいバージョンがインストールされていることを確認できたら、次に仮想マシンを起動して、動作確認を行います。

仮想マシンの起動は以下のコマンドで行います。

vagrant up

仮想マシンの起動エラーとVagrantの手動インストール

仮想マシンを起動しようとしたところ、次のようなエラーが発生しました。

The provider ‘virtualbox’ that was requested to back the machine
‘default’ is reporting that it isn’t usable on this system. The
reason is shown below:

Vagrant has detected that you have a version of VirtualBox installed
that is not supported by this version of Vagrant. Please install one of
the supported versions listed below to use Vagrant:

4.0, 4.1, 4.2, 4.3, 5.0, 5.1, 5.2, 6.0, 6.1

A Vagrant update may also be available that adds support for the version
you specified. Please check www.vagrantup.com/downloads.html to download
the latest version.

このエラーメッセージは、VagrantがインストールされているVirtualBoxのバージョンをサポートしていないことを示しています。この問題を解決するためには、Vagrantの最新版を手動でインストールする必要があります。

Vagrantの最新バージョンをインストールするために、以下のコマンドを使用します。この例では、バージョン2.3.2をインストールしますが、最新版がある場合はそれを使用してください。

sudo rpm -Uvh https://releases.hashicorp.com/vagrant/2.3.2/vagrant-2.3.2-1.x86_64.rpm

記事の更新により、以下が最新版のURLです。

https://releases.hashicorp.com/vagrant/2.4.1/vagrant-2.4.1-1.x86_64.rpm

RPMのインストールとVagrantの初期化エラー

VagrantのインストールにはRPMが必要ですが、デフォルトではインストールされていない場合があります。その場合、以下のコマンドを使用してRPMをインストールします。

sudo apt install rpm

その後、Vagrantをインストールし、バージョンを確認しようとすると、次のようなエラーメッセージが表示されました。

Vagrant failed to initialize at a very early stage:

The plugins failed to initialize correctly. This may be due to manual
modifications made within the Vagrant home directory. Vagrant can
attempt to automatically correct this issue by running:

vagrant plugin repair

If Vagrant was recently updated, this error may be due to incompatible
versions of dependencies. To fix this problem please remove and re-install
all plugins. Vagrant can attempt to do this automatically by running:

vagrant plugin expunge –reinstall

Or you may want to try updating the installed plugins to their latest
versions:

vagrant plugin update

Error message given during initialization: Unable to resolve dependency: user requested ‘vagrant-vbguest (= 0.30.0)’

このエラーは、Vagrantのプラグインに関する依存関係の問題が原因です。以下の方法で修復、再インストール、もしくは更新を行うことで問題を解決できます。

  1. プラグインの修復: 次のコマンドを実行してプラグインを修復します。
    vagrant plugin repair
    ただし、この方法では解決しない場合があります。
  2. プラグインの再インストール: 修復がうまくいかない場合は、以下のコマンドでプラグインを再インストールします。
    vagrant plugin expunge --reinstall
  3. プラグインの更新: 最後に、次のコマンドでプラグインを更新することで解決を試みます。
    vagrant plugin update

これらの手順を実行した後、再びVagrantのバージョンを確認し、仮想マシンを立ち上げる準備が整います。

しかし、仮想マシンの起動中にフリーズする問題が発生した場合、原因は古いバージョンのVirtualBoxが完全に削除されていない可能性があります。この問題を解決するために、以下のコマンドを実行して古いVirtualBoxを完全に削除します。

sudo apt remove virtualbox*

このコマンドを実行後、仮想マシンが正常に起動するはずです。

VirtualBoxのアンインストールに失敗した場合の対処法

古いバージョンのVirtualBoxをアンインストールしようとしたときに失敗する場合があります。そのような場合、まずVirtualBox関連のサービスを停止する必要があります。次のコマンドを実行してサービスを停止します。

sudo service vboxdrv stop

次に、停止されたサービスが実際にプロセスとして動作していないかを確認するため、プロセスID (PID) を確認します。以下のコマンドでプロセスIDを取得します。

pidof VBoxSVC

コマンドを実行すると、VBoxSVCというサービスのプロセスIDが表示されます。このプロセスを強制終了するには、以下のコマンドを使用します。

sudo kill -9 [表示されたPID番号]

表示されたPID番号を上記のコマンド内に入力して実行することで、サービスを強制終了し、アンインストールの障害となっているプロセスを停止できます。これで、再びアンインストールを試みることができます。

結局のところ以下の手順を踏めばエラーに悩まされず済むかと思います。実践内容をそのまま記事にしたのでエラーを解決しながら作業したわけです。

VirtualBoxとVagrantのインストールまたはアップデート方法

1. VirtualBoxのインストールまたはアップデート

まず、VirtualBoxをインストール、もしくはアップデートする手順を以下に示します。

1.1 古いバージョンの削除(必要な場合)

もし、古いバージョンのVirtualBoxがインストールされている場合は、まずそれを削除します。削除するには、次のコマンドを実行します。

sudo apt remove --purge virtualbox*

1.2 最新バージョンのインストール

次に、VirtualBoxの最新バージョンをインストールします。公式サイトからダウンロードした.debファイルを使用してインストールを行います。

wget [VirtualBoxの公式サイトから取得したURL]
sudo dpkg -i [ダウンロードしたファイル名]

依存関係のエラーが発生した場合は、以下のコマンドを実行して不足しているパッケージをインストールします。

sudo apt --fix-broken install

これで、VirtualBoxのインストールが完了します。

2. Vagrantのインストールまたはアップデート

次に、Vagrantをインストール、もしくはアップデートする手順を説明します。

2.1 Vagrantのインストール

Vagrantをインストールするには、まず必要なGPGキーとリポジトリを追加します。以下のコマンドを実行してください。

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

次に、Vagrantをインストールします。

sudo apt install vagrant

2.2 Vagrantのアップデート

すでにVagrantがインストールされている場合は、次のコマンドを使用して最新版にアップデートできます。

sudo apt update
sudo apt upgrade vagrant

これで、Vagrantのインストールまたはアップデートが完了します。

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