WSLを完全に再インストールする

WSLを完全に再インストールする

インストールしました1 言語私は自分の PC に Linux を導入して楽しんでいましたが、2 つのオペレーティング システム間でのファイルの相互運用性が乏しいという限界に気づきました。

そこでインストールしました2 の仕様に従っています (BIOS 設定で仮想化を有効にするなど) が、インストールが完全に機能せず、デフォルトとして設定できず、すべてのシェル コマンドが期待どおりに応答しません。Google で
検索したところ、同様の問題を抱えている人がいましたが、それほど多くの簡単な解決策は提案されていません (まだ比較的新しいケースだと思います)。

そのため、WSL を可能な限り完全に削除し、WSL 2 を最初から再インストールしたいと考えています。

  • WSL を完全に削除するための最も安全で推奨されるプロセスは何ですか?
  • 事前に WSL 1 をインストールせずに、WSL 2 を最初からインストールできますか?

答え1


アップデート: これは現時点では少々古い回答です。Windows 10または11 22H2より前にインストールされた古いバージョンのWSLを実行している場合は、これがアンインストール方法に関する正しい回答かもしれません。ただし、ストアバージョン(またはUWPバージョン)のWSLを実行している場合は、私の新しい回答(および/または他のユーザーの回答がある場合はその回答)。


事前に WSL 1 をインストールせずに、WSL 2 を最初からインストールできますか?

いいえ。WSL2 には基本 WSL サポートが必要です。

WSL を完全に削除するための最も安全で推奨されるプロセスは何ですか?

削除に関する最良の情報は次のとおりですすべてWSL に関連します。

既存のインスタンスはもうダメだと考えているようですが、後世のためにバックアップしたい場合は、次のことから始めることができます。

  • wsl --export <distroname> archivename.tar

次に、既存のディストリビューションのインストールを削除します。

  • ストアからインストールしたディストリビューションは、まず Windows の「アプリと機能」(別名「プログラムの追加と削除」) から削除する必要があります。これは、ダウンロードした Appx パッケージを介して手動でインストールされたディストリビューションにも当てはまります。

次に、何も残っていないことを確認します。PowerShell または CMD から:

  • wsl -l
  • wsl --unregister <distroname>

その時点でストアから新しいディストリビューションをインストールしたい場合があります。他のコンポーネントを追加で再インストールしても、違いが出る可能性は低いです。ただし、それらを削除したい場合は、次の手順に従ってください。

  • Windows の「アプリと機能」(別名「プログラムの追加と削除」) から、「Windows Subsystem for Linux Update」を削除します。これは Linux カーネルのアップデートである可能性が高いです。次の手順に進む前に完全に削除されていることを確認したい場合は、再起動することをお勧めします。

  • 「Windows の機能の有効化または無効化」から、「Windows Subsystem for Linux」を無効にします。コメントによると、次の手順に進む前に再起動が必要になる場合があります。

  • Windows の「Windows の機能の有効化または無効化」から、「仮想マシン プラットフォーム」を無効にします。これは WSL2 Hyper-V のサポートです。

  • リブート。

そこから再インストールする場合は、カーネル更新パッケージをインストールした後(インストールドキュメント)。その情報に基づいてこの回答を更新します。

答え2

この回答は、WSL の新しいストア/UWP バージョンに関するものです。この新しいバージョンを使用していることを確認するには、PowerShell から次のコマンドを実行します。

Get-AppxPackage |? { $_.Name -like "*WindowsSubsystemforLinux*" }

結果が表示された場合は、この回答を読み続けてください。結果が表示されない場合は、WSLの古いリリースを実行している可能性があります。私の古い答えそのバージョンを完全にアンインストールする方法について説明します。

ストア/UWP バージョンの場合、回答は変更されています。

事前に WSL 1 をインストールせずに、WSL 2 を最初からインストールできますか?

はい、Windows 11 22H2では、wsl --installデフォルトでのみWSL2 をインストールします。WSL1 をインストールするには、 を追加する必要がありますwsl --install --enable-wsl1

この--enable-wsl1オプションは、新しい WSP バージョンと互換性のある完全に更新されたシステムであっても、Windows 10 では利用できないことに注意してください。Windows 10 (19045.2311) では、WSL1 は引き続き自動的にインストールされ、有効になりますwsl --install

WSL を完全に削除するための最も安全で推奨されるプロセスは何ですか?

削除に関する最良の情報は次のとおりですすべてWSL に関連します。これにより、(a) すべての機能が削除され、(b) すべてのディスク領域が再利用されるようになります。

  1. オプションで、既存のディストリビューションをバックアップします。

    既存のインスタンスはもうダメだと考えているようですが、後世のためにバックアップしたい場合は、次のことから始めることができます。

    wsl --export <distroname> archivename.tar
    

    経由でバックアップするすべてのディストリビューション名を確認しますwsl -l -v

    あるいは、ディストリビューションから重要なファイルだけをディストリビューション外の安全な場所にコピーします。通常、これにはホーム ディレクトリ内のすべてのファイルが含まれますが、保存しておきたいファイル/varも確認してください。/etc

  2. オプションで、バックアップされた配布の有効性を確認します。

    もちろん、バックアップが重要な場合は、wsl --import新しい名前でバックアップが機能することを確認してください。

  3. 既存のディストリビューションを登録解除します:

    で見つかった各ディストリビューションをwsl -l -v、次のようにして削除します。

    wsl --unregister <distroname>
    

    警告: 上記のように有効なバックアップがない限り、これは破壊的で元に戻せない操作です。

  4. ディストリビューションをアンインストールするパッケージストアからインストールされた(アプリケーション):

    へ移動設定->プログラムを追加または削除するストアからインストールしたディストリビューション (Ubuntu、Debian、Alpine、openSUSE など) を探します。これは実際には、上記で登録解除したディストリビューションとは別のものです。これらのパッケージには、ディストリビューションを最初に作成した Distro Launcher と rootfs が含まれます (例ubuntu2004.exe)。

    各ディストリビューションをアンインストールします。

    古いバージョンのWindowsでは、これらのパッケージをアンインストールするとまた対応するディストリビューションをアンインストールしたため、意図しないデータ損失が発生しました。最近のシステムでは、これらを 2 つの別々の手順で削除する必要があるようですが、これは良いことです。

  5. また、設定->プログラムを追加または削除する「Windows Subsystem for Linux」アプリを探して削除します。これには次のものが含まれます。

    • Windows Subsystem for Linux: メインのWSLパッケージ自体
    • Windows Subsystem for Linux の更新: WSL の古いバージョン (Windows の機能として付属していたインボックス) のカーネル パッケージの更新。
    • Windows Subsystem for Linux WSLg プレビュー: Windows 11 に付属する WSLg 機能。
  6. この時点で再起動して、使用中の他のファイルを解放するのが最善かもしれません。

  7. 次に、設定->Windowsの機能をオンまたはオフにします

  8. 有効になっている場合は無効にします。

    • 仮想マシンプラットフォーム
    • Linux 用 Windows サブシステム

    Windows は再起動を要求する可能性があります。

  9. 再起動後、上記の項目がすべて正常に削除されたことを確認します。この時点で、任意のwslコマンドすべきデフォルトの「インストール」ヘルプ テキストを返すだけです。

ここから再インストールする場合の推奨方法は次のとおりです。

  • 管理者権限でPowerShellを開きます。管理者権限でログインしたユーザーとしてではなく、通常のユーザーとしてログインして実行することをお勧めします。管理者ユーザー。

    wsl --install
    

    デフォルトでは、次のようになります。

    • 仮想マシンプラットフォームを再度有効にする
    • Microsoft Store から最新の WSL リリースをインストールします。このリリースには、以前のように個別のインストール手順を必要とせず、カーネルが直接含まれるようになりました。
    • Microsoft StoreからデフォルトのUbuntuディストリビューションをインストールする

    追加のインストール オプションについては、 も参照してくださいwsl --help。たとえば、この段階でディストリビューションのインストールをスキップしたり、別のディストリビューションを選択したりできます。

関連情報