Windows11 の wsl2 へ RHEL10 をインストールして VSCode で利用する
Table of Contents
背景
前々から wsl2 上で RHEL10 を利用していたが、別の Windows11 の端末の wsl2 上にもインストールすることになったので、手順をメモ。
VSCode で直接 wsl2 を操作できるので、開発が捗る。と思う。
手順
wsl2 の有効化
PowerShell を管理者として実行し、以下コマンドを実行。
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
再起動後に以下を実行。
wsl --install
Activation Key の取得
以下がわかりやすい。
RHEL 10 on WSL2 #redhat - Qiita
概要としては、 RHEL を利用するためのサブスクリプションを無償で利用するため、 Red Hat Developer Program へ参加し、 Red Hat Hybrid Cloud Console から Activation Key の払い出しを行う。
今回利用するのは、個人開発用途の Red Hat Developer Subscription for Individuals を想定。
その他の種類も以下で説明がある。
Getting started with RHEL on WSL | Red Hat Developer
16ノードまで利用でき、個人的に利用する分にはこのサブスクリプションで十分そう。
詳細は以下。
- 【2025年版】無料で始める開発者向けRed Hat Enterprise Linux - 赤帽エンジニアブログ
- No-cost Red Hat Enterprise Linux Individual Developer Subscription: FAQs | Red Hat Developer
RHEL イメージの作成
Red Hat Hybrid Cloud Console の Image Builder からOSイメージを作成する。
https://console.redhat.com/insights/image-builder から Create image blueprint ボタンを押して、適切な項目を設定していく感じ。
Target environments で WSL を選択し、Registration method では Automatically register to Red Hat Hybrid Cloud Console and enable advanced capabilities. として、先に作成した Activation Key を選択する。
Next で進んでいくと、タイムゾーンやロケール、ホスト名、ログインユーザが Advanced Settings として選択できる。
各種設定を施したら、 Create blueprint & build image(s) を押下して、イメージを作成する。
しばらくすると、 Red Hat Hybrid Cloud Console の画面上からイメージがダウンロードできるようになるので、取得する。
wsl2 を RHEL10 イメージを読み込ませて起動
PowerShell を管理者として実行し、以下コマンドを実行。
wsl --import <DistroName> <InstallLocation> <InstallTarFile>
DistroName は wsl2 が識別する任意の名前をつけ、インストール先とターゲットとなる .wsl ファイルを指定する。
インストール先は Windows 側のパスになるので、事前に mkdir $HOME\wsl などで、適当なフォルダを作成するのがよさそう。
また、次回の wsl2 の起動時にデフォルトで今回の RHEL10 を利用したい場合には以下も実行しておく。
wsl -s <DistroName>
さらに、先のイメージ作成時に Advanced settings でログインユーザを作成している場合には、デフォルトのログインをそのユーザに設定することも以下コマンドで実施可能。
wsl --manage rhel10 --set-default-user <UserName>
具体的な作業ログ
PS C:\WINDOWS\system32> mkdir $HOME\wsl
ディレクトリ: C:\Users\gryu7
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2026/05/19 21:40 wsl
PS C:\WINDOWS\system32> wsl --import rhel10 $HOME\wsl C:\Users\gryu7\Downloads\composer-api-362e5f5c-4274-48ab-a95c-504f97d3f7ff-image.wsl
この操作を正しく終了しました。
PS C:\WINDOWS\system32> wsl -s rhel10
この操作を正しく終了しました。
PS C:\WINDOWS\system32> wsl --manage rhel10 --set-default-user gryu7
この操作を正しく終了しました。
PS C:\WINDOWS\system32> wsl --list
Linux 用 Windows サブシステム ディストリビューション:
rhel10 (既定値)
Ubuntu
PS C:\WINDOWS\system32> wsl
[gryu7@hostname system32]$
ちなみに、 Activation Key はイメージに組み込んでいるため、起動初期から subscription-manager に登録されている。
[gryu7@hostname system32]$ sudo subscription-manager status
+-------------------------------------------+
System Status Details
+-------------------------------------------+
Overall Status: Registered
[gryu7@hostname system32]$
VSCode で wsl2 を開くための設定
PowerShell スクリプトが実行できるようにする
PowerShell スクリプトを実行することで、 wsl2 上の VSCodeワークスペース を開きたいので、以下コマンドを PowerShell の管理者権限で実行して、 PowerShell スクリプトの実行を許可する。
Set-ExecutionPolicy RemoteSigned
VSCodeワークスペース・PowerShell スクリプトの作成
VSCodeワークスペース、および、 Windows 上で実行することで wsl2 上の VSCodeワークスペース を開くためのスクリプトを作成する。
VSCodeワークスペース は wsl2 内に配置する。
hoge.code-workspace みたいなやつ。
{
"folders": [
{
"uri": "vscode-remote://wsl+rhel10/home/gryu7" # エクスプローラで開くフォルダ、 rhel10 の部分は wsl2 の DistroName
}
],
"remoteAuthority": "wsl+rhel10",
"settings": {
... 中略 ...
}
}
}
そして、上記のワークスペースを開くための PowerShell スクリプトを Windows 上に ps1 ファイルで作成する。
Start-Process "code" -ArgumentList "--remote","wsl+rhel10","/home/gryu7/wsl2.code-workspace" -WindowStyle Hidden
上記の ArgumentList で渡している引数のうち、第2引数の rhel10 は DistroName, 第3引数は先に作成した VSCodeワークスペースファイルのパス を指定する。
VSCode が wsl2 へ接続できるように拡張機能をインストール
初回起動時にインストールが促されるが、以下をインストールする。
名前: WSL
ID: ms-vscode-remote.remote-wsl
説明: Open any folder in the Windows Subsystem for Linux (WSL) and take advantage of Visual Studio Code’s full feature set.
バージョン: 0.104.3
パブリッシャー: Microsoft
VS Marketplace リンク: https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-wsl
感想
- 商用で利用しているのが RHEL であれば、自宅の環境も RHEL のほうが気持ちよいと思うのでぜひ
- 以前やったときは image 作成するときに Activation Key 登録できたっけかな・・・便利になっていた気がする
- デフォルトイメージを突っ込んだだけで、個別の image を作成していなかっただけかも
- PowerShellスクリプト にしておくと、 Windows 起動時のスタートアップに組み込めたりするので、とても便利
参考
- 以下の2件はすごく参考になった
- そもそも wsl2 に関してのはエラーなど
- RHEL を利用するうえでのサブスクリプションについて
- PowerShellスクリプトにするときの参考