VirtualBoxで64bitOSを扱えない。VT-x is not available (VERR_VMX_NO_VMX).
Windows 10上でVirtualBox ver.5系を動作させていて気がついたが、64bitの仮想マシンが生成できない。 仮想マシンを作成する際にOSとバージョンを選択するが、32bitのみ表示され、64bitはリストに出現しない。
また作成済みの64bit OSの仮想マシンを起動すると、「VT-x is not available (VERR_VMX_NO_VMX).」 のエラーが発生してしまい、起動できない。
- VirtualBox
仮想マシン"CentOS67-develop"のセッションを開けませんでした。
VT-x is not available (VERR_VMX_NO_VMX).
終了コード : E_FAIL (0x80004005)
コンポーネント: ConsoleWrap
インターフェース: IConsole {872da645-4a9b-1727-bee2-5585105b9eed}
VirtualBoxで64bitを有効にするには、BIOSの設定が必要である。 BIOS画面のCPU設定で、「Intel Virtualization Technology」を有効にしなければならない。
しかしこの設定は以前有効にしたはずだ。
それなのに今回64bitが利用できなくなってしまった。
今回の原因はMicrosoftのHyper-VがVT-xを利用してためにVirtualBoxがVt-xを利用できないようだ。
コマンドプロンプト(管理者権限)でbcdeditコマンドを実行すると、hypervisorlaunchtype がautoになっていた。
これがVT-xを利用しているのだろう。
C:\WINDOWS\system32>bcdedit
Windows ブート マネージャー
--------------------------------
identifier {bootmgr}
device partition=\Device\HarddiskVolume1
description Windows Boot Manager
locale ja-JP
inherit {globalsettings}
default {current}
resumeobject {1c2eb29f-8b5f-11e5-b457-e2cc6fa1a0bf}
displayorder {current}
toolsdisplayorder {memdiag}
timeout 30
Windows ブート ローダー
--------------------------------
identifier {current}
device partition=C:
path \WINDOWS\system32\winload.exe
description Windows 10
locale ja-JP
inherit {bootloadersettings}
recoverysequence {5aa83d28-8b5f-11e5-b457-e2cc6fa1a0bf}
recoveryenabled Yes
allowedinmemorysettings 0x15000075
osdevice partition=C:
systemroot \WINDOWS
resumeobject {1c2eb29f-8b5f-11e5-b457-e2cc6fa1a0bf}
nx OptIn
bootmenupolicy Standard
<strong>hypervisorlaunchtype Auto</strong>
このhypervisorlaunchtypeをOFFにすれば良いので、bcdedit コマンドを実行してhypervisorlaunchtype を OFFににし、PCを再起動する。
<strong>bcdedit /set hypervisorlaunchtype off</strong>
もとに戻すときにはこちらのコマンドを実行してPCを再起動する。
bcdedit /set hypervisorlaunchtype auto
参考
Run Hyper-V and VirtualBox on the same machine | derekgusoff
以前は64bitも問題が無かったのに、あるときから利用できなくなった場合はHyper-Vが影響している可能性が高い。
この設定は以前もやったのだが、VisutalStudio2015をインストールしたら復活していたようだ。