WSL 2でUbuntuをインストールしようとしたところ「WslRegisterDistribution failed with error: 0x80370102」というエラーが表示されました。このエラーの原因として最も適切なものはどれですか?
解説
エラーコード0x80370102は、ハードウェア仮想化がシステムで利用できないことを示すエラーです。WSL 2はHyper-Vベースの軽量仮想マシンでLinuxカーネルを動かすため、CPUの仮想化支援機能(Intel VT-x / AMD-V)がBIOSで有効になっている必要があります。選択肢Aのカーネルアップデート不足は別のエラーコードになります。選択肢BについてはHyper-VとWSL 2は競合するものではなく、むしろWSL 2がHyper-Vの技術を利用しています。選択肢Dのイメージ破損はダウンロード系のエラーとなり、このコードとは異なります。0x80370102が出たときに確認すべきことこのエラーに遭遇したら、以下の順序で確認するのが効率的です。BIOSで仮想化を有効にする: PC起動時にBIOS設定画面に入り、Intel VT-x(Intelの場合)またはAMD-V/SVM Mode(AMDの場合)を有効にする。メーカーや機種によって設定項目の名称や場所が異なるため、マザーボードのマニュアルを参照するのが確実Windowsの機能で「仮想マシン プラットフォーム」が有効か確認する: コントロールパネルの「Windowsの機能の有効化または無効化」から確認できるCPUがSLATに対応しているか確認する: SLAT(Second Level Address Translation)はWSL 2の動作に必須の機能で、Intel第1世代Core以降、AMD Opteronなど比較的新しいCPUであれば対応している仮想化が有効か確認するコマンドBIOSを開かなくても、PowerShellから現在の仮想化の状態を確認できます。systeminfo出力の末尾にある「Hyper-V の要件」セクションで、「ファームウェアで仮想化が有効: はい」と表示されていれば仮想化は有効です。「いいえ」であればBIOSでの設定変更が必要です。また、タスクマネージャーの「パフォーマンス」タブでCPUを選択すると「仮想化: 有効」という表示でも確認できます。なお、VirtualBoxやVMwareなどのサードパーティ仮想化ソフトウェアが排他的に仮想化機能を使用している場合にもこのエラーが出ることがあります。その場合はそれらのソフトウェアを停止してからWSL 2を起動してください。