デフォルトでは、Linuxシステム上のOracleVMVirtualBoxのネストされた仮想化は無効になっています。 VirtualBox 6.1のリリースにより、第5世代Corei以降のIntelCPUでネストされた仮想化を有効にできます。
VirtualBoxネスト仮想化の前提条件:
- VirtualBoxバージョン6.1以降
- AMD CPU / Intel CPU(Core i5以降)
記事では、Linux上のVirtualBoxVM用にIntelCPUでネストされた仮想化を有効にする方法を示します。
VirtualBoxをインストール/最新バージョンにアップグレード
注: LinuxシステムにすでにVirtualBox6.1がインストールされている場合は、この手順をスキップできます
この記事の執筆時点では、VirtualBoxの最新バージョンは6.1であるため、システムで古いバージョンのvirtualboxを実行している場合は、次のコマンドを実行してインストールおよびアップグレードします。
Ubuntu/Debianの場合
[email protected]:~$ wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add - [email protected]:~$ wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add - [email protected]:~$ sudo add-apt-repository "deb [arch=amd64] http://download.virtualbox.org/virtualbox/debian $(lsb_release -cs) contrib" [email protected]:~$ sudo apt-get update [email protected]:~$ sudo apt-get install virtualbox-6.1 -y
VirtualBoxのアップグレード後にVMを起動または作成しているときに次のエラーメッセージが表示された場合は、、
この問題を解決するには、次のコマンドを実行します
[email protected]:~$ sudo apt-get remove virtualbox-dkms -y [email protected]:~$ sudo /sbin/vboxconfig
CentOS / RHEL/Fedoraの場合
次の内容でVirtualBox6.xリポジトリファイルを作成します
[[email protected] ~]# vi /etc/yum.repos.d/virtualbox.repo [virtualbox] name=Oracle Linux / RHEL / CentOS-$releasever / $basearch - VirtualBox baseurl=http://download.virtualbox.org/virtualbox/rpm/el/$releasever/$basearch enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://www.virtualbox.org/download/oracle_vbox.asc
ファイルを保存して終了します
以下のYum/DNFコマンドを実行して、virtualbox6.1をインストールします
[[email protected] ~]# yum install VirtualBox-6.1 -y or [[email protected] ~]# dnf install VirtualBox-6.1 -y
注: Linuxシステムの場合、VirtualBox 6リポジトリがすでに構成されている場合は、リポジトリ構成の部分をスキップして、virtualboxを直接インストールまたはアップグレードできます。
VirtualBoxVMのネストされた仮想化を有効にする
仮想ボックスにcentosvmがあり、このvmに対してネストされた仮想化を有効にしてから、vmコンソールにログインして次のコマンドを実行するとします。
# grep -E --color 'vmx|svm' /proc/cpuinfo
上記のコマンドの空白の出力は、ネストされた仮想化がcentosvmで有効になっていないことを確認します。
このVMの電源を切り、 VT-x / AMD-vを有効にしましょう 、ネストされた仮想化を有効にするVMを選択し、[設定]をクリックします。 システムの下 タブで、プロセッサを選択します 「ネストされたVT-x/AMD-vを有効にする」をクリックします 」拡張機能の下 タブ、
[OK]をクリックして変更を保存します
「ネストされたVT-x/AMD-vを有効にする」の場合 」がグレー表示されている場合は、コマンドラインから有効にして、次のコマンドを実行できます。
$ VBoxManage modifyvm
例:
[email protected]:~$ VBoxManage modifyvm ubuntu18 --nested-hw-virt on
次に、Centos VMから、ネストされた仮想化が有効になっているかどうかを確認し、VMの電源を入れてコンソールにログインし、次のコマンドを実行します。
# egrep -E –color ‘svm|vmx’ /proc/cpuinfo # lscpu
上記のコマンドの出力により、CentOSVirtualBoxVMでネストされた仮想化が有効になっていることが確認されます。
この記事はこれですべてです。この記事が参考になり、OracleVMVirtualBoxでネストされたVT-x/AMD-v機能を有効にする方法について理解を深めていただければ幸いです。フィードバックやコメントをお気軽に共有してください。