VirtualBox のインストールと設定(Ubuntu 上)

Ubuntu 24.04 LTSへOracle VM VirtualBoxを導入する方法として、Ubuntu標準リポジトリとOracle公式リポジトリの2通りがある。カーネル更新時のモジュール再構築にはDKMSとカーネルヘッダーが必要である。USB 2.0/3.0等の追加機能は拡張パックの導入とvboxusersグループへのユーザー追加で利用可能となる。仮想マシンデータはホームディレクトリ内に保存する。

Oracle VM VirtualBoxは、仮想マシンソフトウェアである。

このページでは, Ubuntu 24.04 LTS に VirtualBox をインストールする手順を説明する。

目次

  1. 前もって決めておく事項(フォルダ設定)
  2. 前準備
  3. VirtualBox のインストール(Ubuntu 上)
  4. (オプション) 拡張パックに関する操作
  5. フォルダの設定

ソフトウェアの利用条件は各自で確認すること。

拡張パック (Extension Pack) は VirtualBox 本体 (GPLv3) とは異なり、VirtualBox Extension Pack Personal Use and Educational License (PUEL) の下で提供される。無償で利用できるのは個人利用と教育利用に限られる

関連する外部ページ

サイト内の関連ページ

前もって決めておく事項(フォルダ設定)

VirtualBoxが仮想マシンイメージや設定ファイルを保存するフォルダについて、あらかじめ場所を決めておく。

これらのフォルダは、ユーザーのホームディレクトリ内に作成する(例: ~/VirtualBox VMs)。ホームディレクトリ内であれば、追加のアクセス権の設定なしに読み書きできる。

前準備

Ubuntu のシステム更新

インストール作業前に、Ubuntu のシステムを最新の状態に更新する。 端末で次のコマンドを実行する。

Ubuntu のインストール自体については別ページ »で説明する。

# パッケージリストの情報を更新
sudo apt update
# インストール済みのパッケージを包括的に更新 (依存関係も考慮)
sudo apt full-upgrade
# 変更をシステム全体に確実に反映させるために再起動
sudo shutdown -r now

カーネルモジュールのビルドに必要なパッケージのインストール

VirtualBox は vboxdrv 等のカーネルモジュールを使用する。モジュールのビルドと、カーネル更新時の自動再ビルドのため、端末で次のコマンドを実行する。

sudo apt update
sudo apt install build-essential dkms linux-headers-$(uname -r)

VirtualBox のインストール(Ubuntu 上)

インストール方法は主に2つある。

方法1: Ubuntu 標準リポジトリからのインストール

Ubuntu のリポジトリ (multiverse) に含まれるバージョンをインストールする。Ubuntu 側でテストされたバージョンであるが、Oracle が公開している最新版よりも古い。端末で次のコマンドを実行する。

sudo apt update
# virtualbox 本体と、カーネルモジュール自動再ビルド用の dkms パッケージをインストール
sudo apt install virtualbox virtualbox-dkms

virtualbox-dkms パッケージは、Linux カーネルがアップデートされた際に、VirtualBox が必要とするカーネルモジュール(vboxdrv 等)を自動的に再コンパイルする。

方法2: Oracle 公式リポジトリからのインストール

Oracle が提供する最新版の VirtualBox 7.x をインストールする。

Oracle 公式リポジトリのパッケージは、Ubuntu 標準リポジトリの virtualbox パッケージとは別物である。両者を混在させない。標準リポジトリ版を導入済みの場合は、sudo apt remove virtualbox virtualbox-dkms で削除してから作業する。

  1. Oracle の公開鍵を取得し、APT が認識できる形式と場所に配置する:

    端末で次のコマンドを実行する。

    wget -O- https://www.virtualbox.org/download/oracle_vbox_2016.asc | sudo gpg --yes --output /usr/share/keyrings/oracle-virtualbox-2016.gpg --dearmor
    
  2. VirtualBox 用の APT リポジトリ設定ファイルを作成する:

    端末で次のコマンドを実行する。

    echo "deb [arch=amd64 signed-by=/usr/share/keyrings/oracle-virtualbox-2016.gpg] https://download.virtualbox.org/virtualbox/debian $(lsb_release -cs) contrib" | sudo tee /etc/apt/sources.list.d/virtualbox.list
    
  3. パッケージリストを更新し、VirtualBox をインストールする:

    Oracle 公式リポジトリのパッケージ名にはメジャーバージョンが含まれる(例: virtualbox-7.2)。端末で次のコマンドを実行して、利用可能なパッケージ名を確認してからインストールする。

    sudo apt update
    # 利用可能なパッケージ名を確認
    apt-cache search '^virtualbox-'
    # 確認したパッケージ名を指定してインストール (例: virtualbox-7.2)
    sudo apt install virtualbox-7.2
    

VirtualBox カーネル・モジュールの確認

インストール後、VirtualBox のカーネルモジュール (vboxdrv) がロードされているかを確認する。端末で次のコマンドを実行する。

lsmod | grep vbox
sudo systemctl status vboxdrv.service

vboxdrv が一覧に表示され、サービスの状態に Active: active (exited) が含まれていれば、モジュールのロードは成功している。

"Kernel driver not installed (rc=-1908)" のエラーが発生した場合は、端末で次のコマンドを実行する。

sudo apt install --reinstall dkms linux-headers-$(uname -r)
sudo /sbin/vboxconfig

UEFI の Secure Boot が有効な環境では、署名されていないカーネルモジュールはロードされない。この場合は、vboxconfig 実行時に案内される手順で MOK (Machine Owner Key) を登録して再起動するか、Secure Boot を無効にする。

確認のため起動してみる

デスクトップ環境のメニューから、または端末で次のコマンドを実行して VirtualBox マネージャーを起動する。

virtualbox

起動後、「ヘルプ」メニューから「VirtualBox について」を選択すると、インストールされた VirtualBox のバージョンを確認できる。

(オプション) 拡張パックに関する操作

VirtualBox 拡張パック (Extension Pack) は、VirtualBox 本体とは別にインストールするコンポーネントであり、USB 2.0/3.0 デバイスのサポート、VirtualBox Remote Desktop Protocol (VRDP)、ディスクイメージの暗号化、NVMe、PXE ブートなどの機能を提供する。これらの機能が必要な場合にインストールする。

拡張パックのライセンスに関する公式情報は次のページで確認できる:
https://www.virtualbox.org/wiki/Licensing_FAQ

拡張パックは VirtualBox Extension Pack Personal Use and Educational License (PUEL) の下で提供される。無償で利用できるのは個人利用と教育利用であり、企業・団体・行政機関・教育機関の業務としての利用は、有償の Oracle VirtualBox Extension Pack Enterprise ライセンスの対象である。なお、PUEL による 30 日間の試用は廃止されている。ライセンス条項を確認し、条件を満たす場合に次の操作を行うこと。

  1. VirtualBox 本体のバージョンを確認する:

    拡張パックは、インストールされている VirtualBox 本体と同じバージョンである必要がある。端末で次のコマンドを実行して本体のバージョンを確認する。

    # バージョン番号のみを抽出する
    vboxmanage --version | cut -d'r' -f1
    
  2. 対応する拡張パックをダウンロードする:

    Web ブラウザで VirtualBox 公式サイトのダウンロードページ (https://www.virtualbox.org/wiki/Downloads) を開く。

    VirtualBox x.x.x Oracle VirtualBox Extension Pack」の「All supported platforms」リンクをクリックし、先に確認した VirtualBox 本体と同じバージョン番号の拡張パックファイル (Oracle_VirtualBox_Extension_Pack-x.x.x.vbox-extpack) をダウンロードする。

  3. 拡張パックをインストールする:

    ダウンロードした .vbox-extpack ファイルをダブルクリックするか、VirtualBox マネージャーの「ファイル」→「ツール」→「拡張機能パックマネージャー」から GUI でインストールする。または、端末で次のコマンドを実行する。

    # ダウンロードしたファイルの実際のパスに置き換えること
    sudo VBoxManage extpack install ~/Downloads/Oracle_VirtualBox_Extension_Pack-x.x.x.vbox-extpack
    

    コマンド実行後、ライセンス条項が表示される。内容を確認し、同意する場合は yes と入力する。

  4. ユーザーを vboxusers グループに追加する:

    USB デバイスへのアクセスなど、拡張パックが提供する機能を利用するには、VirtualBox を使用するホスト OS 上のユーザーアカウントを vboxusers グループに追加する。端末で次のコマンドを実行する。

    # 現在ログインしているユーザー ($USER) を vboxusers グループに追加する場合
    sudo usermod -aG vboxusers $USER
    

    または、特定のユーザー名を指定する場合は、端末で次のコマンドを実行する。

    # <ユーザ名> を実際のユーザー名に置き換える
    sudo usermod -aG vboxusers <ユーザ名>
    

    このグループ変更を反映させるため、コマンド実行後にログアウトして再ログインするか、システムを再起動する。この操作を行わないと、USB デバイス等が認識されない。

フォルダの設定

VirtualBox が仮想マシンのイメージファイルや設定ファイルを保存する既定の場所を設定する。ここでは、ホームディレクトリ内に VirtualBox VMs というフォルダを作成し、そこに格納する方式を用いる。

  1. ディレクトリの作成:

    ホームディレクトリ内に、VirtualBox 関連ファイルを格納するためのフォルダを作成する。端末で次のコマンドを実行する。

    # ホームディレクトリ (~) 内に 'VirtualBox VMs' フォルダを作成 (バックスラッシュでスペースをエスケープ)
    mkdir ~/VirtualBox\ VMs
    

    ホームディレクトリ内であるため、所有権やアクセス権の追加設定は不要である。

  2. VirtualBox マネージャーでの設定:

    VirtualBox マネージャーを起動する。

    ファイル (File)」メニューから「環境設定 (Preferences ...)」を選択する。

    一般」タブの「デフォルトのマシンフォルダー」項目で「その他」を選び、先ほど作成したフォルダ(/home/<ユーザ名>/VirtualBox VMs)を指定する。

  3. デフォルト・ハードディスク・フォルダについて:

    仮想マシンのハードディスクイメージファイル (.vdi, .vmdk など) の既定の保存場所は、「デフォルトのマシンフォルダー」内である。仮想マシンを新規作成するウィザードの途中で、ハードディスクイメージの保存場所を確認・変更できる。

    仮想マシンのデータは、外部ストレージ等に定期的にバックアップする。