前回はWindows Subsystem for Linux(WSL2)上にインストールしたUbuntuからNASの共有フォルダにアクセスする方法を紹介しました。
いろいろ操作していたところ、WSLのアップデートがあることに気づいたので、今回はこれを紹介したいと思います。
WSLのステータス確認
WSLのステータスはwslコマンドで確認できます。PowerShellを開いて「wsl --status
」を実行してみましょう。
PS C:\WINDOWS\system32> wsl --status 既定の配布: Ubuntu 既定のバージョン: 2 Linux 用 Windows サブシステムの最終更新日: 2022/02/03 Windows Subsystem for Linux カーネルは、'wsl --update' を使用して手動で更新できますが、システム設定が原因で自動更新が発 生することはありません。 カーネルの自動更新を受け取るには、 Windows Update の設定を有効にしてください:' Windowsの更新に、その他のMicrosoftの製品 の更新情報を受け取る'。 詳細については、 https://aka.ms/wsl2kernel. を参照してください カーネル バージョン: 5.10.16
ちなみにこのコマンドで表示されるようにWSL2のLinuxカーネルは5.10.16になっています。
$ uname --a Linux SurfacePro7 5.10.16.3-microsoft-standard-WSL2 #1 SMP Fri Apr 2 22:23:49 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
WSL(Linuxカーネル)の更新
wslコマンドによるとWSLの更新方法としては3つ案内されています。
- wslコマンドを使用する
- Windows Updateを使用する
- https://aka.ms/wsl2kernel でダウンロードできる更新パッケージを使用する
それぞれを簡単に紹介したいと思います。
wslコマンドを使用したアップデート
これは簡単です。
管理者モードでWindows PowerShellを開き「wsl --update
」コマンドを実行します。
管理者モードでWindows PowerShellを開くにはWindowsのスタートメニューで「Windows PowerShell」を探し右クリックをして「管理者として実行」を選択すればOKです。
「wsl --update
」を実行してみたところ次のようになりました。
PS C:\WINDOWS\system32> wsl --update 更新をチェック中... 更新をダウンロード中... 更新をインストール中... この変更は、次回の WSL 再起動時に有効になります。強制的に再起動するには、'wsl --shutdown' を実行してください。 カーネル バージョン: 5.10.60.1
アップデート結果を有効にするには、WSLを一回完全に終了させる必要があります。
「wsl –l --running
」で実行中のWSLがある場合は、そのWSLを操作して終了させるか、「wsl --shutdown
」で強制終了させましょう。
再度WSL2を起動してカーネルバージョンを調べてみると次のように更新されていました。
$ uname -a Linux SurfacePro7 5.10.60.1-microsoft-standard-WSL2 #1 SMP Wed Aug 25 23:20:18 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
ざっと見た感じでは機能的な変更は見つけられませんでしたが、Linux kernelのバージョンの更新に伴って不具合も修正されていますので、新しい方がベターと言えるでしょう。
この記事の作成時点で、5.10系のLinux kernelは5.10.100まで進んでいます。
WSL対応のカーネルがリリースされるまで半年程度のタイムラグがあるようです。
Windows Updateを使用したアップデート
WSLもカーネルをWindows Updateを使って更新できるようですが、そのためにはWindows Updateの設定変更が必要です。
手持ちのPCがWindows 11なのでWindows 11の画面で紹介していきます。
設定画面を開き「Windows Update」を選択したら「詳細オプション」があるのでこれを選択します。
詳細オプションが表示されたら「その他のMicrosoft製品の更新プログラムを受け取る」をオンにします。
この設定をしておけばWindows Updateの一環としてWSLも更新されるようです。
私の場合はすでにwslコマンドでアップデートしてしてしまったので、Windows UpdateでのWSLのアップデートは確認できませんでした。
ただ、この設定を有効にするとMicrosoft Office等の更新プログラムもWindows Updateで配信されるようになります。Microsoft Office等を更新したくない場合は、この設定は避けた方が良さそうです。
ダウンロードできる更新パッケージの使用
Linux カーネル更新プログラム パッケージというファイルが、https://aka.ms/wsl2kernel で配布されています。
この記事を作成しているときに確認してみると「x64 マシン用 WSL2 Linux カーネル更新プログラム パッケージ」というリンクがありました。
このリンクからは「wsl_update_x64.msi」というファイルがダウンロードできます。あとはダインロードしたファイルをダブルクリックして実行するとアップデートされるようです。
私の場合はすでにwslコマンドでアップデートしてしてしまったので、wsl_update_x64.msiでのWSLのアップデートは確認できませんでした。
まとめ
今回はWSLのLinuxカーネルをアップデートする方法を紹介しました。
Linux kernelは不具合修正でどんどん更新されていくので、パッチレベルが高いものを使った方が安心です。
デフォルトだとWSLのLinuxカーネルは更新されないので、定期的にwslコマンドで手動更新するか、Windows Updateの設定を変えて自動配信されるようにしておいたほうが良さそうです。
次回はWindowsにXサーバを導入してLinuxのGUIアプリを使えるようにしたいと思います。
コメント