エラーメッセージ
このエラーは、Linux ディストリビューションをバージョン 2 に切り替える際や、新しい WSL 2 インスタンスを起動する際によく発生します。Windows はポップアップまたはターミナルに以下のメッセージを表示します:
WSL 2 requires an update to its kernel component. For information please visit https://aka.ms/wsl2kernel
Error code: 0x800701bc
原因について
WSL 1 は、Linux のシステムコールをその場で Windows のものに変換することで動作していました。WSL 2 ではこれが変更され、軽量な仮想マシン内で、高度に最適化された専用の Linux カーネルを実行します。Windows OS 本体のイメージを小さく保ち、セキュリティパッチを迅速に適用できるようにするため、Microsoft はこの約 16MB のカーネルを、個別に更新可能なパッケージとして管理しています。
エラー 0x800701bc は、WSL 2 サブシステムは有効であるものの、実際の Linux カーネルバイナリが C:\Windows\System32\lxss\tools フォルダに見つからない場合に発生します。このファイルがないと、Windows は仮想環境を起動できません。
解決策 1:MSI による手動更新(最も確実)
自動ツールで失敗する場合は、インストーラーを直接ダウンロードするのが最も効果的な修正方法です。この方法は、x64 と ARM64 の両方のシステムで有効です。
- WSL2 Linux カーネル更新プログラム パッケージをダウンロードします:wsl_update_x64.msi(約 16MB)。
.msiファイルを実行します。管理者権限を求められた場合は、「はい」を選択してインストールを許可してください。- 短いインストールウィザードを完了させます。
- PowerShell または コマンド プロンプトを管理者権限で開きます。
- 今後のインストールで新しいカーネルが使用されるよう、デフォルトのバージョンを設定します:
wsl --set-default-version 2
解決策 2:WSL コマンドラインを使用する
Windows 11 または Windows 10(ビルド 19041 以降)のユーザーは、組み込みの更新コマンドを使用することで、手動ダウンロードをスキップできることがよくあります。
- スタートボタンを右クリックし、**ターミナル(管理者)**または **PowerShell(管理者)**を選択します。
- 次のコマンドを入力して Enter キーを押します:
wsl --update
成功すると、ターミナルに最新のカーネルを取得するプログレスバーが表示されます。もし、プログレスバーではなくヘルプコマンドの一覧が表示された場合は、現在の WSL バージョンが古すぎてこのフラグをサポートしていません。その場合は、解決策 1 に戻ってください。
解決策 3:Microsoft 製品の Windows Update を有効にする
Windows Update の設定が制限されているために、システムがカーネルの更新をブロックしている場合があります。デフォルトでは、Windows は OS 本体のパッチのみを探し、セカンダリドライバを無視することがあります。
- 設定 > Windows Update に移動します。
- 詳細オプションを選択します。
- **「その他の Microsoft 製品の更新プログラムを受け取る」**を探し、オンに切り替えます。
- メインの更新画面に戻り、更新プログラムのチェックをクリックします。
修正の確認
パッケージのインストール後、サブシステムが正常であることを確認します。まず、WSL 全体のステータスを確認することから始めましょう:
wsl --status
出力結果で、最新のカーネルバージョンを使用していることが確認できるはずです。次に、特定のディストリビューションが実際にバージョン 2 を使用しているか確認します:
wsl --list --verbose
もしディストリビューション(例:Ubuntu)の「version」列がまだ「1」となっている場合は、手動で変換します:
wsl --set-version <distro_name> 2
例:wsl --set-version Ubuntu 2
メンテナンスのベストプラクティス
環境を安定させるために、以下の 3 つの習慣を推奨します:
- グローバル更新を有効にする:「その他の Microsoft 製品」のトグルをオンのままにして、カーネルが常にセキュリティの脆弱性に対してパッチが適用された状態を維持します。
- **強制再起動:**更新後に WSL の応答がなくなった場合は、
wsl --shutdownを実行して仮想マシンを終了し、クリーンに再起動してください。 - **定期的なチェック:**月に一度は
wsl --updateを実行して、Linux カーネルのパフォーマンス向上によるメリットを享受しましょう。

