No.505
【Vagrant】VERR_NEM_VM_CREATE_FAILEDが直らない【Windows】
VirtualBoxでE_FAIL (0x80004005) の呪縛から逃れられない場合に…
Vagrantで仮想環境構築時に下記のエラーが出た。
There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.
Command: ["startvm", "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "--type", "headless"]
Stderr: VBoxManage.exe: error: Call to VidMessageSlotMap failed: Last=0xc000000d/87 (VERR_NEM_VM_CREATE_FAILED)
VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component ConsoleWrap, interface IConsole
もちろん「VirtualBoxにPathが通っているか」など基本的な確認は終えている。(というか動いている)
結論としては、トラブルを引き起こしていたのは「Windowsの機能」の設定だった。
次に嵌まったときに気がつけるように備忘録としてメモしておく。
原因:Windowsの仮想マシン関連の設定
前提として問題があった環境は、Docker Desktop + WSL2 を「アンインストール」したマシンだった。
その上で、Windowsの仮想マシン関連の設定は「そのまま」利用を続けていた。
原因としてはまさにこれで、Docker DesktopやWSL2を使用していない場合、下記のWindowsの機能を 全て無効 にしておく必要がある。
- Hyper-V
- Linux用Windowsサブシステム
- コンテナー
- 仮想マシンプラットフォーム
設定はコントロールパネルから下記の順に辿って設定できる。
コントロールパネル>プログラム>Windowsの機能の有効化または無効化
反映にはWindowsの再起動が必要なので注意しよう。