Microsoft StoreからWindows Subystem for Linuxをインスト。
インスト後の【開く】ボタンを押すと
Linux 用 Windows サブシステムにディストリビューションがインストールされていません。
'wsl.exe --list --online' を使用して利用可能なディストリビューション
を一覧表示し、'wsl.exe --install <Distro>' を使用してインストールします。
また、Microsoft Store にアクセスしてディストリビューションをインストールすることもできます:
https://aka.ms/wslstore
Error code: Wsl/Service/CreateInstance/GetDefaultDistro/WSL_E_DEFAULT_DISTRO_NOT_FOUND
続行するには何かキーを押してください...
wslだけでは何もできないので、何かLinuxをインストしないといけないらしい。現状を確認してみる。
Microsoft Windows [Version 10.0.22621.2283]
(c) Microsoft Corporation. All rights reserved.
C:\Users\[ユーザ名]>wsl --list --verbose
Linux 用 Windows サブシステムにディストリビューションがインストールされていません。
'wsl.exe --list --online' を使用して利用可能なディストリビューション
を一覧表示し、'wsl.exe --install <Distro>' を使用してインストールします。
また、Microsoft Store にアクセスしてディストリビューションをインストールすることもできます:
https://aka.ms/wslstore
Error code: Wsl/WSL_E_DEFAULT_DISTRO_NOT_FOUND
やはり何も入っていない。
このwslのバージョンを確認してみると
C:\Users\[ユーザ名]>wsl.exe --version
WSL バージョン: 1.2.5.0
カーネル バージョン: 5.15.90.1
WSLg バージョン: 1.0.51
MSRDC バージョン: 1.2.3770
Direct3D バージョン: 1.608.2-61064218
DXCore バージョン: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows バージョン: 10.0.22621.2283
WSLのバージョンは古いままらしい。
wslのver2の入手方法は不明。
とりあえず何がインストできるんだろう?
Microsoft Windows [Version 10.0.22621.2283]
(c) Microsoft Corporation. All rights reserved.
C:\Users\[ユーザ名]>wsl.exe --list --online
インストールできる有効なディストリビューションの一覧を次に示します。
'wsl.exe --install <Distro>' を使用してインストールします。
NAME FRIENDLY NAME
Ubuntu Ubuntu
Debian Debian GNU/Linux
kali-linux Kali Linux Rolling
Ubuntu-18.04 Ubuntu 18.04 LTS
Ubuntu-20.04 Ubuntu 20.04 LTS
Ubuntu-22.04 Ubuntu 22.04 LTS
OracleLinux_7_9 Oracle Linux 7.9
OracleLinux_8_7 Oracle Linux 8.7
OracleLinux_9_1 Oracle Linux 9.1
openSUSE-Leap-15.5 openSUSE Leap 15.5
SUSE-Linux-Enterprise-Server-15-SP4 SUSE Linux Enterprise Server 15 SP4
SUSE-Linux-Enterprise-15-SP5 SUSE Linux Enterprise 15 SP5
openSUSE-Tumbleweed openSUSE Tumbleweed
C:\Users\[ユーザ名]>wsl.exe --install Ubuntu-22.04
インストール中: Ubuntu 22.04 LTS
Ubuntu 22.04 LTS がインストールされました。
Ubuntu 22.04 LTS を起動しています...
Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username: admin ※試しに既存のユーザ名を入力してみると・・・
adduser: The group `admin' already exists. ※ちゃんと弾かれた
Enter new UNIX username: [Linux用のユーザ名]
New password:
Retype new password:
passwd: password updated successfully
Installation successful!
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.
Welcome to Ubuntu 22.04.2 LTS (GNU/Linux 5.15.90.1-microsoft-standard-WSL2 x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
This message is shown once a day. To disable it please create the
/home/[Linux用のユーザ名]/.hushlogin file.
[Linux用のユーザ名]@[PC名]:~$
無難なUbuntu-22.04をインストしてみた。
これで使えるらしい。
一応、Windowsで再ログインするとエクスプローラからUbubtuのリンクが貼られているのでファイル操作は可能。
また、windowsのコマンドラインからwslを実行すると、
Microsoft Windows [Version 10.0.22621.2283]
(c) Microsoft Corporation. All rights reserved.
C:\Users\slani>wsl
root@[PC名]:/mnt/c/Users/[ユーザ名]# pwd
/mnt/c/Users/[ユーザ名]
root@[PC名]:/mnt/c/Users/[ユーザ名]#
と出るので、/mnt/[windowsのドライブ名]/・・・な感じでwindowsのファイルへもアクセスできそう。
ただ、ネットワークをいじるのはマズイらしいから、外部からの参照は不可っぽい。
複数のディストリビューションも併用できるっぽいのでOracleLinux_9_1もインストしてみた。
C:\Users\[ユーザ名]>wsl --list --verbose
NAME STATE VERSION
* Ubuntu-22.04 Stopped 2
OracleLinux_9_1 Stopped 2
ちなみにエクスプローラのリンクもOS毎に分かれていたので安心。
コマントラインでwslを起動すると、*の付いたUbuntu-22.04が実行される。
C:\Users\[ユーザ名]>wsl
root@[PC名]:/mnt/c/Users/[ユーザ名]#
C:\Users\[ユーザ名]>wsl --list --verbose
NAME STATE VERSION
* Ubuntu-22.04 Running 2
OracleLinux_9_1 Stopped 2
ディストリビューションを指定すればドレでも起動もできる。
C:\Users\[ユーザ名]>wsl -d OracleLinux_9_1
[root@[PC名] [ユーザ名]]#
C:\Users\[ユーザ名]>wsl --list --verbose
NAME STATE VERSION
* Ubuntu-22.04 Stopped 2
OracleLinux_9_1 Running 2
試しにプレリリースをインストしてみると
C:\Users\[ユーザ名]>wsl --update --pre-release
更新プログラムを確認しています。
Linux 用 Windows サブシステムをバージョンに更新しています: 2.0.0。
^C
C:\Users\[ユーザ名]>wsl --version
WSL バージョン: 1.2.5.0
カーネル バージョン: 5.15.90.1
WSLg バージョン: 1.0.51
MSRDC バージョン: 1.2.3770
Direct3D バージョン: 1.608.2-61064218
DXCore バージョン: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows バージョン: 10.0.22621.2283
変わらない。(謎
一旦、コマンドプロンプトを閉じて、開き直なおして再確認。
Microsoft Windows [Version 10.0.22621.2283]
(c) Microsoft Corporation. All rights reserved.
C:\Users\[ユーザ名]>wsl --version
WSL バージョン: 2.0.0.0
カーネル バージョン: 5.15.123.1-1
WSLg バージョン: 1.0.57
MSRDC バージョン: 1.2.4485
Direct3D バージョン: 1.608.2-61064218
DXCore バージョン: 10.0.25880.1000-230602-1350.main
Windows バージョン: 10.0.22621.2283
無事にver2になってた。
後、wslで起動した場合、コマンドプロンプトを閉じても終了しないので、ちゃんとshutdownしないといけないらしい。
Microsoft Windows [Version 10.0.22621.2283]
(c) Microsoft Corporation. All rights reserved.
C:\Users\[ユーザ名]>wsl --shutdown