wsl2において、次のエラーが出たときの対処法
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: ホストが落ちています
systemctlコマンドがなぜか使えなくなってしまったため、しばらく放置しておりましたが、最近になって再度調べたところ、以下のように対処することで改善することができました。
原因
エラーの内容としては、systemdがPID 1ではないので操作できません。といったエラー内容です。
ホストが落ちています、ということからsystemdが正常に起動していないと解釈しました。
対処法
wslで「/etc/wsl.conf」というファイルを作成します。
vi /etc/wsl.conf
[boot]
systemd=true
wslを再起動します。
PowerShellを開いて以下コマンドを実行します。
PS C:\Users\xxx> wsl --shutdown
wslに戻ってsshdのステータスを確認し、エラーが出なければOKです。
ここまででwsl2のエラー対処ができたかと思います。
最初は「ぇ?なんでwsl使えないの?」と戸惑った方もいらっしゃるかもしれませんが、落ち着いて対処すれば解決できますね。
ここからはAWS CloudTechの宣伝となります。
僕も広く活用させていただいているAWSオンライン学習コミュニティのCloudTechですが、CloudTechに入会するのに今なら最大で4,000円引きのクーポンを配信しております!!!
※クーポンをご利用になりたい方は以下のリンクから内容をご確認ください。