WSL_0x80370102_解決策
WSLの0x80370102エラーを解決する完全ガイド
問題の説明
Windows Subsystem for Linux (WSL) をインストールまたは起動しようとする際に、次のようなエラーメッセージが表示されることがあります:
WslRegisterDistribution failed with error: 0x80370102
Please enable the Virtual Machine Platform Windows feature and ensure virtualization is enabled in the BIOS.
このエラーは通常、システムがWSL 2の実行に必要な仮想化サポートを欠いていることを示しています。WSL 2は、仮想マシンプラットフォーム機能が有効になっており、BIOS/UEFIで仮想化テクノロジーが有効になっている必要があります。
エラーの原因
0x80370102エラーの主な原因は以下の通りです:
- BIOS/UEFIで仮想化機能が有効になっていない
- Windowsの「仮想マシンプラットフォーム」機能が有効になっていない
- Hyper-V機能が正しく構成されていない可能性がある
- ハイパーバイザー起動タイプの設定が正しくない
- 他の仮想化ソフトウェアとの潜在的な競合がある
解決策
クイック解決方法(推奨)
最も効果的かつ簡単な解決策は、ハイパーバイザー起動タイプを有効にすることです:
- 管理者として、ターミナルまたはPowerShellを開きます
- 次のコマンドを実行します:
bcdedit /set hypervisorlaunchtype auto
- コンピューターを再起動します
このコマンドはハイパーバイザー起動タイプを自動に設定し、WSLの0x80370102エラーのほとんどのケースを解決します。再起動完了後、通常通りWSLを起動できるようになるはずです。
ステップ1:BIOS/UEFIで仮想化を有効にする
上記のクイック方法が機能しない場合は、BIOSで仮想化が有効になっていることを確認してください:
- コンピューターを再起動し、起動時に特定のキーを押してBIOS/UEFI設定に入ります(一般的なキーにはF2、Delete、F10、Esc、またはF12があり、コンピューターのブランドとモデルによって異なります)
- BIOS/UEFI設定で、仮想化オプションを探します。名前は以下のようになっている場合があります:
- Intelプロセッサー:Intel VT-x、Intel Virtualization Technology、Virtualization Extensions
- AMDプロセッサー:AMD-V、SVM Mode、Virtualization Technology
- このオプションを有効にします
- 設定を保存してBIOS/UEFIを終了します
- コンピューターを再起動します
ステップ2:Windowsで仮想マシンプラットフォームを有効にする
- 以下のいずれかの方法で仮想マシンプラットフォーム機能を有効にします:
方法1:PowerShellを使用
管理者としてPowerShellを開き、次のコマンドを実行します:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
方法2:Windows機能を使用
- Win+Rキーを押し、「control panel」と入力してコントロールパネルを開きます
- 「プログラムと機能」>「Windowsの機能の有効化または無効化」に移動します
- 「仮想マシンプラットフォーム」と「Windows Subsystem for Linux」にチェックを入れます
- OKをクリックして、コンピューターを再起動します
ステップ3:Hyper-Vを有効にする(該当する場合)
一部のWindowsバージョンでは、Hyper-Vも有効にする必要がある場合があります:
- PowerShell(管理者)を開きます
- 次のコマンドを実行します:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
ステップ4:WSL 2カーネル更新プログラムをインストールする
- WSL 2 Linuxカーネル更新パッケージをダウンロードしてインストールします
- コンピューターを再起動します
ステップ5:WSL 2をデフォルトバージョンとして設定する
- PowerShell(管理者)を開きます
- 次のコマンドを実行します:
wsl --set-default-version 2
仮想化が有効になっているか確認する
タスクマネージャーを通じて仮想化が有効になっているか確認できます:
- Ctrl+Shift+Escキーを押してタスクマネージャーを開きます
- 「パフォーマンス」タブに切り替えます
- 「CPU」を選択します
- 右下の「仮想化」の状態を確認します。「有効」と表示されるはずです
潜在的な競合
VirtualBoxやVMwareなどの他の仮想化ソフトウェアをインストールしている場合、WSL 2と競合する可能性があります。すべての必要な機能を有効にした後も問題が発生する場合は、次のことを試してください:
- 他の仮想化ソフトウェアを一時的にアンインストールする
- または、これらのソフトウェアをHyper-Vをサポートする最新バージョンに更新する
結論
0x80370102エラーは通常、bcdedit /set hypervisorlaunchtype auto
コマンドを実行してコンピューターを再起動することで迅速に解決できます。この方法が機能しない場合は、BIOS/UEFIでの仮想化、Windowsの仮想マシンプラットフォーム機能、およびHyper-Vを有効にすることを試してください。WSL 2は仮想化技術に基づいているため、必要なすべての仮想化サポートが有効になっていることを確認することが重要です。
上記の手順を完了しても問題が解決しない場合は、Microsoft公式WSLドキュメントを確認するか、Windows フィードバックハブを通じて問題レポートを提出することをお勧めします。