WSL2上に作成されているPodman Machineを色々と汚してしまったので、削除して再度作成する際の手順を記しておきます。
前提条件
- WSL2(Windows11)
- Podman Desktopインストール済
- Podman Machine作成済
※Podman Machineを初期化するとコンテナやイメージも削除されます。
※消したくないものは予めバックアップしておくと良いでしょう。
Podman DesktopでのPodman Machine作り直し
「Settings」>「Resouces」>「Podman」
の該当するPodman Machineの停止ボタン「■」をクリックします。

Podman Machineの状態が「RUNNING」から「OFF」になったら、
停止ボタン右横のゴミ箱ボタンをクリックします。

「Create new …」ボタンをクリックします。

デフォルトの状態で「Create」ボタンをクリックします。

作成完了したら「Go back to resources」ボタンをクリックします。

Podman Machineの状態が「RUNNING」になっていればOKです。

PodmanコマンドでのPodman Machine作り直し
PowerShellでコマンドを実行していきます。
まずは状態の確認をします。
podman machine list

Podman Machineを停止させます。
podman machine stop

「podman-machine-default」を削除します。
podman machine rm podman-machine-default

Podman Machine「podman-machine-default」を新規作成します。
podman machine init podman-machine-default --rootful --username user --now

Windows Terminalの設定変更
Windows Terminalを使っている場合、Podman DesktopでPodman Machineを作成した際にPodman Machineのプロファイルが追加されます。
Podman Machineの再作成をすると、このターミナルが使えなくなります。


プロファイルの設定を変更することで対処できます。
タブ右側の「v」から「設定」を選択します。

左側のプロファイルリストから「podman-machine-default」を選択し、
「コマンドライン」の右側にある、丸まった矢印をクリックします。

「保存」ボタンをクリックします。
これで「podman-machine-default」のターミナルが使えるようになります。
補足説明をしておきます。
コマンドラインの値を確認すると次のようになっています。
C:\WINDOWS\system32\wsl.exe --distribution-id {5f85aa48-d3ef-4767-b184-84a8bb8dc189} --cd ~
「podman-machine-default」のディストリビューションを指定する際に、
ディストリビューションを特定するGUIDを指定しています。
{5f85aa48-d3ef-4767-b184-84a8bb8dc189}
このGUIDが、ディストリビューション作成毎に変わります。
そのため、古いプロファイルのままでターミナルを開こうとすると
ディストリビューションが見つからずエラーとなるわけです。
GUIDに使われる値はWindowsのレジストリに保存されていて、
次のコマンドで確認できるようです。(ChatGPTに聞きました)
Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss\*" | Select-Object DistributionName, PSChildName

「毎度GUIDを確認して再設定するのも面倒だよね」という場合は、
固定のディストリビューション名で指定しておけば良いでしょう。
C:\WINDOWS\system32\wsl.exe -d podman-machine-default --cd ~
以上です。
コメント