豚吐露@wiki

WSLのversion変更ができない

最終更新:

ohden

- view
管理者のみ編集可

WSLのversion変更ができない

Windows11 (22H2)

WSL2にversion変更できない&WSL2が使えない

今までWSL1で使ってたが、諸事情でWSL2にしなきゃならんくなったんじゃが...
今まで使ってたディストリビューション(Ubuntu)をWSL1からWSL2に変換しようとしたら、できんかった。
仕方がないのでDebianでもWSL2でinstallしようとしたら、できんかった。

で、どうにか調べてWSL2で動かせるようになったのでmemo。

環境

WSL2が使える環境であることを確認する。
  • 仮想化支援機能の有効されてること
  • 必要なWindowsコンポーネントが有効になってること

・仮想化支援機能
CPUに付いてる仮想化支援機能の有効化が必要。
Intel、AMDで以下機能として提供されてるので、BIOSの設定とかで有効にしてあげなきゃいけない。
BIOSの操作方法とかメーカー依存、機種依存が激しいので割愛。
  • AMD Virtualization
  • Intel Virtualization Technology(Intel VT、VT-d、VT-x)
ただし、Intelの場合、Core i3以下のCPUや一部のCore i5には、そもそもこの機能が付いて無かったりするので要注意。BIOSに項目が無かったら多分そう...

WSL2がHyper-V有りきになっちゃった関係で、CPUにこれらの機能が付いてないとWSL2は使えない。

設定変更後、タスクマネージャーで仮想化支援機能の有効・無効を確認できる。

・Windowsコンポーネント
以下3項目が有効であることの確認。
  • Linux 用 Windows サブシステム
  • Windows ハイパーバイザー プラットフォーム
  • 仮想マシン プラットフォーム
※『Windows ハイパーバイザー プラットフォーム』の要否が判断できん。入れる前はエラーが出てて、入れたらエラーが消えて、抜いてもエラーが出ん...意味が分からん。

『仮想マシン プラットフォーム』の有効化は、多分以下のcommandを用いてもできる。
> dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

まぁ、設定から[アプリ]-[オプション機能]-[Windows のその他の機能]選択すると『Windows の機能』ダイアログ開くので、そこからまとめて確認した方が良い。

ちなみに、わしの環境で動かんかった原因は、『Windows ハイパーバイザー プラットフォーム』が入っとらんかったことなんじゃが...
Win10でWSL2動かしてる環境確認してみたら、『Windows ハイパーバイザー プラットフォーム』入って無くても動いてた。
で、上でもちょろっと書いてますが、動いた後に『Windows ハイパーバイザー プラットフォーム』抜いても普通に動いてしまった...

Win10環境との『wsl -v』の比較はこんな感じ。version比較もしてみたが、Windows version以外何も変わらん...
Win10(64bit) 22H2 Win11 22H2
WSL バージョン: 1.2.5.0 1.2.5.0
カーネル バージョン: 5.15.90.1 5.15.90.1
WSLg バージョン: 1.0.51 1.0.51
MSRDC バージョン: 1.2.3770 1.2.3770
Direct3D バージョン: 1.608.2-61064218 1.608.2-61064218
DXCore バージョン: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows バージョン: 10.0.19045.3086 10.0.22621.1848

Windows versionの確認
上記項目が無かったら、Windowsのversion確認。
WSL2有効化以降のversionで無かったら、OSのupdateからやらなきゃいけない。
  • Windows10 May 2020 Update
  • Windows11

command
上記環境整えてからの変換を実行。
> wsl --set-version ubuntu 2
WSL 2 との主な違いについては、https://aka.ms/wsl2
 を参照してください
変換中です。これには数分かかる場合があります。
この操作を正しく終了しました。

> wsl -l -v
  NAME STATE VERSION
* Ubuntu Stopped 2


更新日: 2023年07月10日 (月) 17時31分31秒

名前:
コメント:

すべてのコメントを見る
添付ファイル
記事メニュー
目安箱バナー