MX Linuxにおける”System has not been booted with systemd as init system (PID 1). Can’t operate.”の対処方法

MX Linuxにおいてsystemctlコマンドを使用した際に下記のようなエラーが生じました.


systemctl status cron.service 
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Host is down

この記事では,”System has not been booted with systemd as init system (PID 1). Can’t operate. Failed to connect to bus: Host is down”のトラブルシューティングを記載します.

目次

原因

MX LinuxのデフォルトのinitプロセスはSysVinitであり,Systemdが無効になっているようです.

下記コマンドで実際に確認してみるとSysVinitとなっています.


ps -p 1
    PID TTY          TIME CMD
      1 ?        00:00:02 init

当然のことながら,SystemdではなくSysVinitではsystemctlが利用できません.

なお,確認したMX LinuxはMX 21.2.1 Wildflowerです.

解決方法

解決方法は,initプロセスをSysVinitからSystemdに変更するだけです.

方法 1」と「方法 2」の二つの方法を示します.(方法1の方がわかりやすくて簡単です.)

1. まず右下のボタンより,[MX Tools]を開きます.

2. [MX Tools]の中から[Boot Options]を開きます.

方法 1

Boot optionの”Boot to”をAdvanced optionsの「MX … (systemd)」に変更します.

「Apply」ボタンで設定を保存した後,再起動します.

方法 2

Boot optionの”Kernel parameters”の初期値がquiet splashとなっているので,quiet splash init=lib/systemd/systemdに変更します.

「Apply」ボタンで設定を保存した後,再起動します.

Systemdの確認

再起動後に,下記コマンドでPIDがsystemdになっていることが確認できます.


ps -p 1
    PID TTY          TIME CMD
      1 ?        00:00:02 systemd

これで,systemctlコマンドが利用できるようになりました.

参考にしたサイト

よかったらシェアしてね!
目次