WSLにFedoraを入れてみた。
Windows上でシェルスクリプトやlinux系コマンドを使うときに便利である。
Ubuntuは以前に使用したことがあったが、RedHat系とパッケージマネージャーやパスが違い使いずらいのでなるべくFedoraに統一したいところ。
インストール
インストーラ(Fedora-Remix-for-WSL-SL_35.12.3.0_x64_arm64.msixbundle)は以下からダウンロードできる。
.msixbundle
という拡張子はMSI形式のインストーラーをまとめたものなので、普通にダブルクリックでインストールできる。
※以前はwsl --import
が必要だったようだがインストーラー形式になったらしい。
インストールしたら即起動、といきたいところだが、その前に少々設定が必要になる。
WSLというのは仮想マシンホストのようなもので(厳密には違うが)ディストリビューション(仮想マシンのインスタンスのようなもの)を複数管理・起動できる。
インストール済みのディストリビューションはwsl -l -v
コマンドで確認できる。
c:\>wsl -l -v
NAME STATE VERSION
* docker-desktop Stopped 2
docker-desktop-data Stopped 2
fedoraremix Stopped 1
fedoraremix
というのが追加したfedoraのディストリビューションである。
Docker for Windowsをインストールした環境で確認してみると、…見覚えのないdocker-desktop
というディストリビューションが追加されてたりする。
この環境だとデフォルトではfedoraでなくdocker-desktopのほうが起動してしまう(><
設定
インストールした直後はWSL1を使用する設定になっており使用できない機能があるので、WSL2に切り替える。
wsl --set-version fedoraremix 2
また、fedoraがデフォルトになってない場合は、以下のコマンドでデフォルトに切り替える。
※エクスプローラーでShift+右クリックを押し『Linuxシェルをここに開く』で起動するのもデフォルトのディストリビューションになる。
wsl --set-default fedoraremix
確認
設定を変更した後に再度確認すると以下のようになる。
c:\>wsl -l -v
NAME STATE VERSION
* fedoraremix Stopped 2
docker-desktop-data Stopped 2
docker-desktop Stopped 2
あとはwsl
コマンドを実行すればデフォルトのディストリビューションが起動する。
ちゃんとrpm
も使える。
c:\>wsl
[root@PC c]# rpm
RPM version 4.17.0
Copyright (C) 1998-2002 - Red Hat, Inc.
起動時にwsl -d <ディストリビューション名>
でディストリビューションを指定して起動することもできる。
c:\>wsl -d docker-desktop
PC:/mnt/host/c# rpm
-sh: rpm: not found
WSL の基本的なコマンド
https://docs.microsoft.com/ja-jp/windows/wsl/basic-commands