Windows 10と11、Microsoftストアでバージョンが異なるWSL
Windows Subsystem for Linux(以下、WSL)は、Windows 10 Ver.1709(RS3)で標準搭載されるようになり、現在に至る。今のWSLには、リリース版Windows 10/11に含まれるもの、Windows Insider Programのプレビュー版に含まれるもの、そしてMicrosoftストアで配布されているプレビュー版がある。
Microsoftストアの「Windows Subsystem for Linux Preview」のページ。System Requirementsには、Windows 10 Version 19041.0以降で利用できるように記載されているが、実際には、インストールができるだけで実行できない
さらに細かく見ていくと、WSLには大きく5つのバージョンがある。
1つは、Windows 10に同梱されているもので、21H2と22H2では同じもののようだ。というのも、「C:\Windows\System32」にあるwsl.exeのファイルバージョンとWSL2用のカーネルバージョンが同一だからだ。もしかすると細かな違いがあるのかもしれないが、はっきりと違いがわかる部分は見当たらなかった。
これに対してWindows 11は21H1と22H2で、wsl.exeのファイルバージョンが異なる。ただし、カーネルのバージョンは同じ。Windows 10とも同じだが、Windows 11のWSLには、Linux GUIアプリの対応(WSLg)などがあるため、WSL自体はWindows 10とは異なっている。
また、Windows Insider ProgramのWindows 11プレビュー版(以下、プレビュー版)だが、Relese Preview ChannelとBeta Channelで配布されているビルドでは、Windows 11の22H2リリース版と同じだった。これに対してDev Channelのものは、カーネルのバージョンは同じだが、wsl.exeのファイルバージョンが異なる。これで合計4つ。あと1つは、Microsoftストア版である。
Microsoftストア版は、Windows 11以降(プレビュー版を含む)にインストールが可能で、どれに入れても同じバージョンになるようだ。
WSLの更新はそもそもどうなっているのか?
Microsoftストアで配布されているWSLは、そもそもプレビューという位置づけである。つまり、WSLの正式版はWindowsに付属しているバージョンになる。Windowsのプレビュー版に関しては、Windows Insider Programのブログでリリースの概要が発表される。
ただ、このところのブログ記事にはWSLに関するものがほとんどない。Windows 11のプレビュー時期までは、ブログとは別にWSLのリリースノートがあり、これがプレビュービルドに連動して変更点を公開していた。しかし、Microsoftストア版プレビューの公開以来、この更新が止まっている。
これらのことから考えると、WSLのプレビューに関しては、Microsoftストア版に移行したと考えられる。Microsoftストア版に関しては、GitHub上に簡単だがリリースノートが用意されている。
このリリースノートを見ると、Microsoftストア版WSLのバージョンに応じてLinuxカーネルのバージョンも上がっており、WSL自体のバージョンとLinuxカーネルのバージョンとの間には一定の関係があると考えられる。つまり、同じカーネルバージョンを使うということは、WSL自体の主要な機能もほぼ同じと考えられる。Windows 10とWindows 11のWSLには、Linux GUIアプリへの対応(WSLg)の有無などの違いがあるが、「設定」→「アプリ」→「インストールされているアプリ」を見ると、WSLとWSLgはパッケージとしては別になっている。
そういう意味では、WSLには、Windows 10版、Windows 11版、Microsoftストア版プレビューの3つがあるとするのが正確そうだ。
Microsoftストア版WSLのバージョンを確認する
Windowsリリース版、プレビュー版に付属するWSLには、WSL自体のバージョンを表示する機能がない。これに対して、Microsoftストア版WSLでは、wsl.exeに「--version」オプションが追加されており、これでWSL自体のバージョンを表示できる。
Windowsに付属のWSLでは、wsl.exeが「--version」オプションに対応しておらず、ヘルプを表示する。ただし、「--status」オプションでは、カーネルのバージョンを表示する。Microsofストア版WSLをインストールすると「--version」(-vと省略可能)が有効になるが、逆に「--status」オプションが簡易表示になる
なお、似たような機能としてWindows付属版WSLには、「--status」がある。ここではLinuxカーネルのバージョンと「Linux用Windowsサブシステムの最終更新日」という表示が出る。ただし、この最終更新日は、最後にLinuxカーネルをアップデートした日付を表示するだけで、WSL自体のバージョンとは何の関係もない。
逆に言えば、Microsoftストア版がインストールされているかどうかは、wsl.exeが「--version」に対応しているかどうかで判定できる。もし、wsl.exeのヘルプ表示が出るようなら、それはMicrosoftストア版WSLではない。Microsoftストア版は、インストールされていれば必ず優先される。
というのも、Microsoftストア版のwsl.exeは、UWPアプリで、アプリ実行エイリアスになっているからである。同名のデスクトップアプリのexeファイルがあっても、デフォルトでは、アプリ実行エイリアスが優先される(「設定」→「アプリ」→「アプリの詳細設定」→「アプリ実行エイリアス」に設定がある)。
Microsoftストア版に関する情報は、GitHubの以下のページにある。
●Releases · microsoft/WSL
https://github.com/microsoft/WSL/releases
これによれば、原稿執筆時点でのプレビューは、Ver.0.70.5である(公開は日本時間の10月26日)。ただし、wsl.exeの「--version」オプションでは、「0.70.5.0」と表示されるようだ。ここから、msixパッケージを使ってのインストールも可能だが、基本的には、Microsoftストアの自動更新で十分である。

この連載の記事
-
第508回
PC
Scalable Vector Graphics(SVG)そもそも何なのか? -
第507回
PC
Windows 11の「開発者モード」とは何か? -
第506回
PC
Windows 11は早くも来秋登場の26H2プレビューの準備が始まる -
第505回
PC
結構変化しているWindows 11のエクスプローラーの基本設定を見直す -
第504回
PC
新しいOutlookとOutlook Classic、そろそろ古いOutlookとExchangeの組み合わせは引退の頃合いか -
第503回
PC
機能が増えたこともあり、寄せ集めから統合化に進むWindowsの便利ツール「PowerToys」 -
第502回
PC
Windows 11でBluetoothのオーディオ新規格「Bluetooth LE Audio」を試す -
第501回
PC
Windows 11 Ver.25H2での変更点、新機能を整理する -
第500回
PC
Windows 11 Ver.25H2が完成した -
第499回
PC
Windowsでの致命的だが回復可能なエラーに備える手段を2つ紹介 -
第498回
PC
Windows Terminalの安定版V1.23が公開 設定UIが改良される - この連載の一覧へ












