『Oracle VM VirtualBox』は Oracle 社が開発している仮想マシンを動かすためのハイパーバイザーです。既存のオペレーティング・システム上でツールとして動作するタイプ2型ハイパーバイザーなので手軽に導入することができます。
本稿では筆者が Arch Linux 上に VirtualBox を導入した際に行った設定などを乗せています。
本体のインストール
VirtualBox のクライアントをインストールします。クライアント自体はオープンソースなので Arch 公式リポジトリに置いてあるので Pacman で取ってくるだけです。
$ sudo pacman -S virtulbox
モジュールのインストール
ホストPCが使用中のカーネル用に VirtualBox モジュールをインストールします。
- 標準 Linux カーネル
Arch 標準の Linux カーネルを使用している場合、ビルドされたバイナリファイルが用意されている以下のパッケージだけで大丈夫です。
$ sudo pacman -S virtualbox-host-modules-arch
インストールログ
Install DKMS modules
==> dkms install --no-depmod vmware-workstation/17.6.2_24409262 -k 6.12.8-arch1-1
==> dkms install --no-depmod vboxhost/7.1.4_OSE -k 6.12.8-arch1-1
==> depmod 6.12.8-arch1-1
- カスタムカーネル
カスタムカーネルを使用している場合はモジュールをビルドする必要があります。 VirtualBox DKMS(Dynamic Kernel Module Support)だけでなく、コンパイルするために対応したヘッダファイル郡を導入します。以下の例は ZEN カーネルの場合です。
$ sudo pacman -S linux-zen-headers
$ sudo pacman -S virtualbox-host-dkms
インストールログ
Install DKMS modules
==> dkms install --no-depmod vmware-workstation/17.6.2_24409262 -k 6.12.8-zen1-1-zen
==> dkms install --no-depmod vboxhost/7.1.4_OSE -k 6.12.8-zen1-1-zen
==> depmod 6.12.8-zen1-1-zen
ゲストツールのインストール
ゲストOS 用のドライバーなどが入っている ISOファイルを導入します。このパッケージがインストールされているとわざわざ Oracle のホームページまで行ってツールをダウンロードする手間が省けます。
$ sudo pacman -S virtualbox-guest-iso
ユーザグループ登録
グループ vboxusers
にユーザー登録されていないと以下のようなエラーが表示されます。
VirtualBox is not currently allowed to access USB devices. You can change this by adding your user to the 'vboxusers' group. Please see the user manual for a more detailed explanation.
ホストマシンのUSBデバイスへアクセスが許可されていないというエラー文です。
$ sudo usermod -a -G vboxusers hogehoge
-a
は append (追加)するというオプションで、-G
はプライマリグループの代わりにセカンダリグループを変更するオプションです。プライマリグループを変更するとシステムが壊れる可能性があるので必ずセカンダリを指定します。 -a -G
合わせてセカンダリグループにユーザーを追加します。 -aG
とも表記できます。
拡張機能のインストール
VirtualBox には商用利用不可の拡張パッケージがあります。商用利用するには1ソケット10数万円かかる「Oracle VM VirtualBox Enterprise」ライセンスを購入する必要がありますが、個人利用および教育目的でしたら無償で利用することができます。
この拡張パッケージをインストールすると以下の機能が追加されます。
- virtual USB 2.0 (EHCI)
- virtual USB 3.0 (xHCI)
- VirtualBox Remote Desktop Protocol (VRDP)
- ウェブカメラ・パススルー
- Intel PXE boot ROM
- PCI パススルー(Linuxホストのみ)
- ディスクイメージ暗号化(AES)
この拡張機能はクローズドソースソフトウェアなので公式パッケージにはありません。その代わり有志が AUR にリポジトリを作成しているのでそちらを使わせていただきます。
$ paru virtualbox-ext-oracle
お わ り
コメント