WSLのubuntuを立ち上げたら、いきなり以下のメッセージが出てきました。 致命的なエラーです。 エラー コード: Wsl/Service/E_UNEXPECTED
WSLのubuntuを立ち上げたら、いきなり以下のメッセージが出てきました。
致命的なエラーです。
エラー コード: Wsl/Service/E_UNEXPECTED
Press any key to continue...
状況、把握しました。これはWSLのサービス側が予期せずこけた時に出る一般エラーで、スリープ復帰やDocker/VS CodeのWSL連携中断などが引き金になることがあります。まずは“安全に戻す”手順から順に実施してください(上から順に、どこかで直れば次へ進む必要はありません)。
まずは軽症パターンの復旧
-
いったん全部止める
管理者権限のPowerShellで:
これでWSLの軽量VMを完全停止します。このコマンドは公式にも“環境を再起動したい時に必要になる”とされています。Microsoft Learn
-
Windowsを再起動
再起動後にUbuntuを起動してみてください。ノートPCのスリープ復帰直後に同エラーが出て、wsl --shutdown
→再起動で解消する報告が複数あります。QiitaGitHub+1 -
WSLの状態確認と更新
まだ再発する場合は、管理者PowerShellで:
--status
/--version
で構成とバージョンを確認し、--update
でWSL本体を最新化します。Microsoft Learn
それでもダメな場合(設定/機能まわり)
-
Windowsの機能を確認
[Windowsの機能の有効化または無効化]で以下が有効になっているか確認し、無効なら有効化→再起動。
-
Windows Subsystem for Linux
-
仮想マシン プラットフォーム(WSL2利用時)
WSL公式トラブルシューティングにも基本対処として記載があります。Microsoft Learn
個別ディストリが壊れている疑い
-
どのディストリが落ちているか確認
Ubuntuだけが落ちる/他は起動する場合、Ubuntuアプリの[設定 → アプリ → Ubuntu → 詳細オプション]から
-
まず「修復」(データ保持)
-
直らなければ「リセット」(初期化・データ消去)
という順で試すのが実例ベースで有効です。Zenn
-
データを救って入れ直す(最終手段)
リセット前に、起動できるうち(または他ディストリからマウントできる状況)ならエクスポートでバックアップを取ります:
再インポート:
エクスポート/インポート手順は公式コマンドに含まれています。Microsoft Learn
再発防止のコツ
-
VS Codeの「Reopen in Container」やDocker Desktop使用中にそのままスリープさせない(発生例あり)。発生したらまず
wsl --shutdown
。Qiita -
大型アップデート後は
wsl --update
でWSLを最新に。 -
もし頻発するなら、Docker DesktopやWSLの既知課題としてGitHubのIssueに類似事例があります(多くは
wsl --shutdown
で一時回復)。GitHub+2GitHub+2
必要なら、今の環境(Windowsのエディション/バージョン、WSLの--version
出力、wsl -l -v
の結果)を教えて頂ければ、上記のどの段で詰まりやすいかを絞り込んで手順を書き換えます。