Windows 仮想Linux WSLのバージョンを設定する。
2023/02/21
2023/03/05
仕事の内容によって使う仮想環境が異なるためwsl1とwsl2の切り替えが必要なケースが有る。
今回は導入する環境ごとの切り替え方法についてまとめる。
wslを使用するOSイメージの一覧を表示
1 2 3 4 5 6 |
ps> wsl -l -v NAME STATE VERSION * Ubuntu-20.04 Stopped 1 docker-desktop Stopped 2 docker-desktop-data Stopped 2 Rocky_8_RC_Unofficial Stopped 2 |
デフォルトのwslバージョンを切り替える
先程実行した限りでは「Ubuntu-20.04」がデフォルトのWSL Linuxになっている。一覧表示の際にNAMEフィールドの先頭に”*”がついているものはデフォルトの意味になります。では、これを「Rocky_8_RC_Unofficial」の別Linuxに切り替えるにはどうしたら良いだろうか?
1 2 3 4 5 6 7 |
ps> wsl -s Rocky_8_RC_Unofficial ps> wsl -l -v NAME STATE VERSION * Rocky_8_RC_Unofficial Stopped 2 docker-desktop Stopped 2 docker-desktop-data Stopped 2 Ubuntu-20.04 Stopped 1 |
wslデフォルトにすることのメリット
メリットという程のものではないが、普通にpowershellからwsl Linuxを呼び出す際にコマンドラインから「bash」と入力するとデフォルト設定のLinuxに直ぐに切り替わるのだ。
最近のpowershellはタブで窓を複数起動できるので当にLinuxのterminalのごとく使えるのである。タブ起動でpowershellが起動するのでbashと入力すれば複数窓でOSの制御や状態変更できるのは便利ですね。多くの方はアプリ起動で専用のwsl linux terminalを使っていると思うが実はbashだけでwsl linux起動できるのだ。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
PS C:\Users\ichin> bash [rocky@DzoneRyze424 ichin]$ pwd /mnt/c/Users/ichin [rocky@DzoneRyze424 ichin]$ cd [rocky@DzoneRyze424 ~]$ pwd /home/rocky [rocky@DzoneRyze424 ~]$ ls -la total 28 drwx------ 3 rocky rocky 4096 Feb 21 08:24 . drwxr-xr-x 3 root root 4096 Feb 21 08:23 .. -rw------- 1 rocky rocky 34 Feb 21 08:24 .bash_history -rw-r--r-- 1 rocky rocky 18 Jul 27 2021 .bash_logout -rw-r--r-- 1 rocky rocky 141 Jul 27 2021 .bash_profile -rw-r--r-- 1 rocky rocky 376 Jul 27 2021 .bashrc drwx------ 3 rocky rocky 4096 Feb 21 08:24 .config [rocky@DzoneRyze424 ~]$ |
デフォルトのwsl バージョンを切り替える
デフォルトを設定するとそれ移行に導入したWSL Linuxはそのバージョンを使うようになる 。ただし先程のOS単位でバージョンスイッチは可能なので変更は可能だ。そして「wsl -l -v」で気がついている方もいると思うがWSLはデフォルトバージョンを設定するとWindows全体がそのWSLバージョンに切り替わるわけではなく混在で同居できるのだ。
1 2 3 4 5 |
WSLバージョンを1にする。 PS C:\Users\ichin> wsl --set-default-version 1 WSLバージョンを2にする。 PS C:\Users\ichin> wsl --set-default-version 2 |