🐈
WSL2上のUbuntuでsystemctlのコマンドが打てなくて困った話
とある必要があって
sudo systemctl restart docker
を実行しようとしたら、
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Host is down
と出て困った時の話。
WSLのバージョンが古い
どうやら古いバージョンのWSLだとsystemctlを含むコマンドを実行できないらしい。
なので、 power shellでwsl --update
を実行して更新する。
WSL内で有効化する必要がある
WSL内で/etc/wsl.conf
を作成し、
[boot]
systemd=true
と記述する事で有効化できる
ぼやき
後者の方法で有効化する方法は検索したらすぐ出たが、私の環境だとsystemctlが実行されなかった。その後調べている中で前者の原因が出てきた。解決にくっそ時間かかったのでここに残す
Discussion