WSL2 で AlmaLinux
〜 ありそでなさそな手順書 第9弾 〜
2026-07-07 作成 福島
TOP > tips > wsl2-alma
[ TIPS | TOYS | OTAKU | LINK | MOVIE | CGI | AvTitle | ConfuTerm | HIST | AnSt | Asob | Shell | GBC | LLM ]

0. 前置き

WSL2 といえば Ubuntu ですが、実務を考慮して AlmaLinux*1 をインストールします。
*1 RHEL 系なので同様のはずだけど、なぜか WSL2 では RockyLinux がサポート外になっている。

今回は Teraterm で操作可能にします。


1. WSL2 の準備と AlmaLinux のインストール

1-1. WSL2 を有効にする。
すでに WSL2 が有効なら実施しない。→ 1-2 へ。

− □ × 
 >_ Windows PowerShell ×   + |
 
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

新機能と改善のために最新の PowerShell をインストールしてください!https://aka.ms/PSWindows  

PS C:\> # WSL の状態を確認する
PS C:\> wsl --status 
• WSL が無効の場合
Linux 用 Windows サブシステムがインストールされていません。 'wsl.exe --install' を実行してインストールできます。詳細については、https://aka.ms/wslinst all にアクセスしてください
• WSL が有効の場合 (Linux がまだインストールされていない)
既定のバージョン: 2 WSL1 は、現在のマシン構成ではサポートされていません。 WSL1 を使用するには、"Linux 用 Windows サブシステム" オプション コンポーネントを有効にして ください。
• WSL が有効の場合 (AlmaLinux がインストールされている)
既定のディストリビューション: AlmaLinux-9 既定のバージョン: 2 WSL1 は、現在のマシン構成ではサポートされていません。 WSL1 を使用するには、"Linux 用 Windows サブシステム" オプション コンポーネントを有効にして ください。
PS C:\> # WSL2 を有効にする PS C:\> wsl --install --no-distribution ダウンロード中: Linux 用 Windows サブシステム 2.7.8 [==========================80.0%============= ] インストール中: Linux 用 Windows サブシステム 2.7.8 Linux 用 Windows サブシステム 2.7.8 はインストールされました。 Windows オプション コンポーネントをインストールしています: VirtualMachinePlatform 展開イメージのサービスと管理ツール バージョン: 10.0.26100.5074 イメージのバージョン: 10.0.26100.8328 機能を有効にしています [==========================100.0%==========================] 操作は正常に完了しました。 要求された操作は正常に終了しました。変更を有効にするには、システムを再起動する必要があります。 要求された操作は正常に終了しました。変更を有効にするには、システムを再起動する必要があります。 PS C:\> # PC を再起動させる PS C:\> shutdown /r /t 0
ここで PC が再起動する

1-2. WSL2 に Linux をインストールする。
AlmaLinux-9 をインストールする。

− □ × 
 >_ Windows PowerShell ×   + |
 
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

新機能と改善のために最新の PowerShell をインストールしてください!https://aka.ms/PSWindows  

PS C:\> # インストール可能な Linux を確認する
PS C:\> [Console]::OutputEncoding=[Text.Encoding]::Unicode; wsl --list --online |
 Select-String "alma|rocky" 

AlmaLinux-8                     AlmaLinux OS 8
AlmaLinux-9                     AlmaLinux OS 9      ← 今回はこれをインストールする
AlmaLinux-Kitten-10             AlmaLinux OS Kitten 10
AlmaLinux-10                    AlmaLinux OS 10

PS C:\> # AlmaLinux-9 をインストールする
PS C:\> wsl --install AlmaLinux-9 
ダウンロードしています: AlmaLinux OS 9
[==========================80.0%=============              ]
ダウンロードしています: AlmaLinux OS 9
インストールしています: AlmaLinux OS 9
[==========================100.0%==========================]
ディストリビューションが正常にインストールされました。'wsl.exe -d AlmaLinux-9' を使用して起動
できます
AlmaLinux-9 を起動しています...
Please create a default UNIX user account. The username does not need to match your Windows u
sername.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username: who
Changing password for user who.
New password: password         ← 実際は表示されない
Retype new password: password
passwd: all authentication tokens updated successfully.


AlmaLinux-9 へ自動的にログインされる

[who@pc who]$ # Linux バージョンを確認する [who@pc who]$ cat /etc/system-release AlmaLinux release 9.8 (Olive Jaguar) [who@pc who]$ # IP アドレスを確認する [who@pc who]$ hostname -I 172.31.55.38 ← このアドレスに対してアクセスする [who@pc who]$ # ホスト名を変更する (1) (sudo なのでパスワードを入力する) [who@pc who]$ sudo bash -c "cat << EOF >> /etc/wsl.conf [network] hostname = pc generateHosts = false EOF" [who@pc who]$ # ホスト名を変更する (2) [who@pc who]$ sudo bash -c "echo '127.0.0.1 pc' >> /etc/hosts" [who@pc who]$ # ssh サーバをインストールする [who@pc who]$ sudo dnf install -y openssh-server [who@pc who]$ sudo systemctl start sshd [who@pc who]$ systemctl status sshd sshd.service - OpenSSH server daemon Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; preset: enanabled) Active: active (running) since Sat 2026-06-20 17:39:55 JST; 2h 5min ago Docs: man:sshd(8) man:sshd_config(5) Main PID: 42 (sshd) Tasks: 1 (limit: 49304) Memory: 5.6M (peak: 7.9M) CPU: 261ms CGroup: /system.slice/sshd.service mq42 "sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups" Jun 20 17:39:55 pc systemd[1]: Starting OpenSSH server daemon... Jun 20 17:39:55 pc sshd[42]: Server listening on 0.0.0.0 port 22. Jun 20 17:39:55 pc sshd[42]: Server listening on :: port 22. Jun 20 17:39:55 pc systemd[1]: Started OpenSSH server daemon. Jun 20 17:40:16 pc sshd-session[368]: Accepted password for who from 172.31.48.1 port 56973 > Jun 20 17:40:16 pc sshd-session[368]: pam_unix(sshd:session): session opened for user who(ui> [who@pc who]$ # AlmaLinux-9 からログアウトする [who@pc who]$ exit PS C:\> # AlmaLinux-9 を終了する (→ 次回起動時にホスト名が有効になる) PS C:\> wsl --shutdown PS C:\> exit


2. ssh の接続を準備する。
公開鍵を作成して Linux に設置することにより、Windows の ssh クライアントからパスワードなしでログインできるようにする。

− □ × 
 >_ Windows PowerShell ×   + |
 
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

新機能と改善のために最新の PowerShell をインストールしてください!https://aka.ms/PSWindows  

PS C:\> # OpenSSH のバージョンを確認する
PS C:\> ssh -V 
OpenSSH_for_Windows_9.5p2, LibreSSL 3.8.2

PS C:\> # 公開鍵ペアを作成する
PS C:\> mkdir "$env:USERPROFILE\.ssh\" -Force 
PS C:\> ssh-keygen -t ed25519 -f "$env:USERPROFILE\.ssh\id_ed25519" --% -N "" 
Generating public/private ed25519 key pair.
Your identification has been saved in C:\Users\who\.ssh\id_ed25519
Your public key has been saved in C:\Users\who\.ssh\id_ed25519.pub
The key fingerprint is:
SHA256:AxehgTfqfsHWguSeOD56V43Kgmq4zql8UWp2k3JGfxM who@pc
The key's randomart image is:
+--[ED25519 256]--+
|     .. o.       |
|    . oo .       |
|     oo..        |
|    oo o E       |
|   +*oooS..      |
|   *+**.++       |
|. o=*=.+. .      |
|+.B.* +          |
|O@o+ o           |
+----[SHA256]-----+

PS C:\> # 公開鍵を確認する
PS C:\> type "$env:USERPROFILE\.ssh\id_ed25519.pub" 
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIczpHzpIOD6bMEzzQw+ZSAtJ3rKlezWmN7DLZiUpg/HW who@pc

PS C:\> # AlmaLinux-9 に公開鍵を設置する
PS C:\> wsl bash -c "mkdir -p ~/.ssh/ ; chmod 700 ~/.ssh/" 
PS C:\> wsl bash -c "touch ~/.ssh/authorized_keys ; chmod 644 ~/.ssh/authorized_keys" 
PS C:\> type "$env:USERPROFILE\.ssh\id_ed25519.pub" | 
wsl bash -c "cat >> ~/.ssh/authorized_keys" 

PS C:\> # 公開鍵が設置されたことを確認する
PS C:\> wsl bash -c "cat ~/.ssh/authorized_keys" 
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIczpHzpIOD6bMEzzQw+ZSAtJ3rKlezWmN7DLZiUpg/HW who@pc

PS C:\> exit 


パスワード無しの SSH ログインが可能になった


3. Teraterm で AlmaLinux-9 へログイン

WSL2 はプロセスが何もないとデーモンごとスリープしたままになるので、
これを回避するためダミープロセスを起動してからログインする。

− □ × 
 >_ Windows PowerShell ×   + |
 
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

新機能と改善のために最新の PowerShell をインストールしてください!https://aka.ms/PSWindows  

PS C:\> # Linux の IP アドレスを確認する
PS C:\> wsl -- hostname -I 
172.31.55.38

PS C:\> # WSL2 を起動して Teraterm で接続する
PS C:\> Start-Process wsl -ArgumentList "-- sleep infinity" -WindowStyle Hidden ; `
sleep 3 ; `
& "C:\Program Files (x86)\teraterm\ttermpro.exe" who@172.31.55.38 `
/ssh2 /auth=publickey /keyfile="$HOME\.ssh\id_ed25519" ; `
exit 


Teraterm を起動してこのウィンドウは消える

 sleep は WSL2 が起動までの待ち秒数。PC の性能に合わせて調整すると良い。

終了するときは Teraterm の中から  pkill sleep  を実行する。
 💻 172.31.55.38 - who@pc:~ VT
[who@pc ~]$ ps aux | grep -v grep | grep sleep
who      57  0.0  0.0   5608  1936 pts/0   Ss+  19:59  0:00 sleep infinity 

[who@pc ~]$ pkill sleep