広告

WSL2 WSLg

Ubuntu

WSL、以前から予告されていたとおり、Linux の GUI アプリを動作させることができるようになりました。
なら試してみようということで、まずは Windows11 をノート PC にインストールしました。
Ubuntu は Hyper-V 仮想マシンに引っ越すことにします。

最初、こちらからダウンロードした Windows11 の ISO ファイルを使って USB ブートメディアを作成してクリーンインストールを試みましたが、ドライバーが無いということであれこれ Lenovo サイトからドライバーをダウンロードしたものの、結局インストールを続けることができませんでした。
なので、もう一つの「インストールメディアを作成する」方法で無事、クリーンインストールすることができました。
プロダクトキーは T14 プリインストールの Windows10 のものを適用することで、ライセンス認証も問題ありませんでした。もちろん、Microsoft アカウントでデバイス管理から、仮想マシンの Windows10 を削除しました。

ここまで特に問題はなかったのですが、ハマったのは「Windows のその他の機能」から仮想マシンプラットフォームを有効化したとき。チェックを入れて再起動すると、どうしてもブルースクリーンになって Windows11 を起動することができませんでした。

以前の Windows10 の時は何も問題無く Hyper-V も WSL も有効にできていたのになぜ?という感じでしたが、少し調べてみたところ、次のサイトにあるように、BIOS(UEFI)の設定で"Enhanced Windows Biometric Security"が有効になっているとエラーになることがあるそうです。

今回はまさにこれでした。無効にすることで無事、PC を起動することができました。

ちなみに、Microsoft Store から WSL をインストールする場合は下の画像のように「仮想マシンプラットフォーム」にチェックするだけで OK です。「Linix 用 Windows サブシステム」にチェックを入れる必要はありません。

無事 PC が起動したら Microsoft Store から Windows Subsystem for Linux Preview と Ubuntu をインストールして、試しに Nautilus ファイルマネージャを 'sudo apt -y install nautilus’ でインストールしてみたところ、Windows 側に VcXsrv など Xサーバーを入れなくても普通に起動できました。

Windows11 のスタートメニュー(すべてのアプリ)には後からインストールした Linux GUI アプリのアイコンが出てきます。Nautilus の場合は Files(Linux) という名前になっていました。

wsl.exe –install -d ubuntu

Microsoft Store ではなく、コマンドプロンプトから WSL をインストールすると次のとおり、Linux 用 Windows サブシステムも(PC を再起動すると)有効化されます。

PS C:\Users\hoge> wsl.exe --install -d ubuntu
インストール中: Linux 用 Windows サブシステム
Linux 用 Windows サブシステム はインストールされました。
ダウンロード中: WSL カーネル
インストール中: WSL カーネル
WSL カーネル はインストールされました。
ダウンロード中: GUI アプリ サポート
インストール中: GUI アプリ サポート
GUI アプリ サポート はインストールされました。
ダウンロード中: Ubuntu
要求された操作は正常に終了しました。変更を有効にするには、システムを再起動する必要があります。
PS C:\Users\hoge>

日本語 locale その他若干の設定を終えれば終了です。
頑張れば「Desktop環境以外は Ubuntu」という感じにできるかもしれませんが、Windows と Linux の両方が必要な開発者とかはともかく、普通に仮想マシン環境(Hyper-V)に Ubuntu をインストールするほうが無難かも。

Posted by @think