要旨
WindowsターミナルからWSL2のLinuxを起動すると、エクスプローラーのWindowsとLinuxのディレクトリパスをLinux形式で貼り付けることができ、便利です。
WSLのアイコンは自由に変更できるので、使用する内容に応じたものへ変更すれば、気分良く選択することができます。
WSLディストリビューションを何度も入れ替えして遊んでいると、トラブルに出会いました。トラブルシューティングについても記載します。
1. カスタマイズ方法
アイコン
WindowsターミナルにWSLディストリビューションの名前が認識されていることが前提です。
上図の設定をクリックして、左側から対象のディストリビューションを選びます。
設定タブのアイコンをクリックし、置き換えるpng, icoファイルを指定します。
なお、表示が小さいので細かい図柄は判別できません。
使用するアプリ、そのウェブサイトに使われるアイコン、あるいはAIにより作成したアイコンを使用しています。
その他の設定
以前、WSL2の基本操作の1.3項に記載したように、パスの変換機能が便利です。これは、追加の設定>詳細設定の項目により確認することができます。
2. トラブルシューティング
(1) 'wsl -d ディストリビューション名'から起動するが、Windowsターミナルに登録されない
settings.jsonファイルを確認する(上図の設定画面左下の"JSONファイルを開く")
- "disabledProfileSources"の記述があるか
- "disabledProfileSources":[ ]の記述がある場合は、[ ]内に、"Windows.Terminal.Wsl-旧記述", "Microsoft.WSL-新記述"など、"WSL"を連想するものが含まれる場合は、削除する
最低限のsettings.jsonファイル設定での動作確認
- 認識しないWSLディストリビューションを"commandline"と"name"のみとして、Windowsターミナルを再起動する(うまくいかない場合は、管理者権限も実施する。この編集では壊れることはありません)
私がこれまで経験したケースでは、この設定で自動認識しました。
{
"commandline": "wsl -d Fistr_Oracle9",
"name": "Fistr_Oracle9"
}
GUIから設定する
- 設定なしで自動生成される項目
"guid", "hidden" - GUIから設定する項目
開始ディレクトリ:"startingDirectory"に反映される。通常"~"で良い。
アイコン:"icon"項目に反映される。
詳細設定 > プロファイルの終了動作: "closeOnExit"に反映される。
最も役に立つ機能
詳細設定 > パスの変換:WSL(C:\ -> /mnt/c)
設定ファイルの完成状態(最低限の入力からGUIにより追加)
{
"closeOnExit": "always",
"commandline": "wsl -d Fistr_Oracle9",
"guid": "{c7477bdc-7b4a-55ba-a81d-xtsh367pfkjlshus}",
"hidden": false,
"icon": "C:\\Users\\...\\LocalState\\Force-R1.ico",
"name": "Fistr_Oracle9",
"pathTranslationStyle": "wsl",
"startingDirectory": "~"
}
設定ファイルの完成状態(2025年4月に自動認識、アイコンとプロファイルの終了動作を手動設定)
{
"closeOnExit": "always",
"guid": "{58486d3e-83cb-5614-962b-jdhgerui782flgrd}",
"hidden": false,
"icon": "D:\\WSL_VMs\\elmer_deb12\\Elmer.png",
"name": "elmer_deb12",
"source": "Microsoft.WSL"
}
(2) 'wsl -d ディストリビューション名'から起動しなくなった
- Windows + R → regedit と入力
- HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss
- 起動しないWSLをDistributionName、Flavor、OsVersionから見つける
- BasePathに誤りがないか確認する(名前とPathが合っていれば、起動するはずです)
参考情報
WSLのLinuxの操作
GNOMEなどのLinuxデスクトップを使用する場合は、Windowsと同様にアイコンから起動することが多いと思います。
WSLの場合は、コマンド操作が基本ですので、~/.bashrcにechoコマンドを追加して、起動時にアプリ情報を確認できるようにしています。
########## 設定 ###########
echo -e \\n"Elmer / Ice function, with HYPRE, MUMPS, MMG (ParMMG), Lua, and Zoltan libraries." \\n
echo -e "Linux Appli: Salome 9.14, Scilab, Onelab (Gmsh+GetDp), Paraview 5.11" \\n
echo -e "winpv5: paraview 5.13.2 for windows" \\n
########## 起動時のメッセージ ############
Elmer / Ice function, with HYPRE, MUMPS, MMG (ParMMG), Lua, and Zoltan libraries.
Linux Appli: Salome 9.14, Scilab, Onelab (Gmsh+GetDp), Paraview 5.11
winpv5: paraview 5.13.2 for windows
多数のWSLディストリビューションを使用する場合の推奨事項
レジストリの編集とファイルの移動により、ディストリビューションの名前や保存場所の変更ができます。
しかし、Windowsターミナルの設定には情報が伝わらないので、不具合の生じる可能性が高いです。面倒でも、エクスポート・インポートにより移動する方法が無難です。
WSLでディストリビューションをインポート・エクスポート