🐧
WSLのインストールに失敗したら (起動してもエラーになったら) 試してみる方法
(ここでの WSL は、WSL2 のことを指します)
WSL のインストールは、公式手順 に従っても、WSL を起動したときに エラー が発生し、うまくいかないことがあります。
私の場合は、公式手順で紹介されているコマンド wsl --install
で WSL をインストールしても、実際に Ubuntu などを起動しようとすると以下のような エラー が出てしまいました。
Installing, this may take a few minutes...
WslRegisterDistribution failed with error: 0x80370102
Error: 0x80370102 ??????????????????????????????????????
(他にも色々なエラーコードが出ることがあるようです)
WSLをインストールする別の方法
まず、タスクマネージャーでCPUの仮想化機能が有効になっているかどうか確認します。
有効になっていない場合はUEFIやBIOSから有効化します。
次に、下記のWindowsの機能を一度無効にした後、有効にします。
- 仮想マシンプラットフォーム
- Linux 用 Windows サブシステム
- Windows ハイパーバイザー プラットフォーム
- WSL自体に必要ではありませんが、WSL(Hyper-V)と他の仮想化ツール(VirtualBoxなど)を併用する場合に必要です
コマンドで作業する場合の例です。
管理者権限で起動したPowerShell で次のコマンドを実行します。
# 一旦、機能を無効化
dism.exe /online /disable-feature /featurename:VirtualMachinePlatform /norestart
dism.exe /online /disable-feature /featurename:Microsoft-Windows-Subsystem-Linux /norestart
dism.exe /online /disable-feature /featurename:HypervisorPlatform /norestart
# ⚠PCを再起動
Restart-Computer -Force
再起動後、管理者権限で起動したPowerShell で次のコマンドを実行します。
# 機能を有効化
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:HypervisorPlatform /all /norestart
# ⚠PCを再起動
Restart-Computer -Force
再起動後、MSストア から Windows Subsystem for Linux をインストールすれば、完了です。
もし、WSLのインストールに困っている方がいたら、試してみてください。
Discussion