All Products
Search
Document Center

:Mengatasi error systemctl pada instans Linux

Last Updated:Apr 28, 2026

Atasi error systemctl yang disebabkan oleh sistem init non-systemd atau konfigurasi systemd yang rusak.

Gejala

Menjalankan perintah systemctl pada instans Linux menghasilkan salah satu error berikut:

System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to get D-Bus connection: xxx xxx.

Penyebab

systemctl adalah alat baris perintah untuk systemd, yaitu sistem init dan manajer layanan Linux. Error ini terjadi karena alasan berikut:

  • Sistem tidak menggunakan systemd sebagai sistem init-nya.

    • Beberapa distribusi Linux lama atau ringan (seperti Devuan, Alpine Linux, atau Void Linux) secara default menggunakan sistem init lain (misalnya OpenRC, SysVinit, atau runit). Sebagai contoh, Windows Subsystem for Linux (WSL) secara default menggunakan SysVinit.

    • Jika Anda menjalankan perintah tersebut di dalam kontainer Docker atau Podman yang tidak dikonfigurasi untuk menggunakan systemd, error ini akan muncul.

  • Sistem menggunakan systemd, tetapi systemd mengalami kerusakan atau salah konfigurasi.

Solusi

  1. Hubungkan ke instans Linux.

    Lihat Masuk ke instans Linux menggunakan Workbench.

  2. Periksa apakah sistem menggunakan systemd sebagai sistem init-nya:

    ps -p 1 -o comm=
    • Output kosong atau bukan systemd: Sistem tidak menggunakan systemd. Gunakan perintah manajemen layanan sesuai dengan sistem init yang digunakan.

      Catatan

      Jika Anda memerlukan skrip systemctl, gunakan distribusi Linux yang mendukung systemd, atau jalankan sistem Linux yang mendukung systemd di dalam kontainer Docker.

      Sebagai contoh, jika sistem menggunakan SysVinit (output-nya adalah init), gunakan perintah service sebagai ganti systemctl. Tabel berikut membandingkan perintah umum:

      Operasi/perintah

      SysVinit

      Systemd

      Start service

      sudo service service_name start

      sudo systemctl start service_name

      Stop service

      sudo service service_name stop

      sudo systemctl stop service_name

      Restart service

      sudo service service_name restart

      sudo systemctl restart service_name

      Check service status

      sudo service service_name status

      sudo systemctl status service_name

      Enable auto-start

      sudo chkconfig service_name on

      sudo systemctl enable service_name

      Disable auto-start

      sudo chkconfig service_name off

      sudo systemctl disable service_name

    • Output-nya adalah systemd: Sistem menggunakan systemd. Jika error tetap muncul, systemd mungkin mengalami kerusakan atau salah konfigurasi. Rujuk dokumentasi resmi distribusi Anda untuk memulihkan layanan systemd.