diskon 50% semua paket, waktu terbatas. Mulai dari $2.48/mo
7 menit tersisa
Servidor & Sistem Operasi

Cara Mengatasi Error systemctl: Command Not Found di Ubuntu

Nick Silver By Nick Silver 7 menit baca Diperbarui 20 Feb 2025
cara mengatasi systemctl: command not found

Salah satu alat paling berguna bagi pengguna Linux, terutama distro modern seperti Ubuntu, adalah perintah systemctl. Utilitas command-line ini biasanya digunakan untuk berinteraksi dengan systemd, sistem, dan service manager.

Melalui perintah ini, kamu bisa mengelola layanan sistem, melihat statusnya, menjalankan atau menghentikannya, serta mengaktifkan dan menonaktifkannya saat sistem startup. Cukup berguna, bukan? Tapi jika perintah systemctl tidak ditemukan atau tidak dikenali, kamu akan menghadapi "sudo:systemctl: command not found" kesalahan.

Jadi, mari kita bahas apa arti error "systemctl: command not found", berbagai penyebabnya, dan cara mengatasinya.

Apa Arti Error "systemctl: Command Not Found"?

Singkatnya, error "systemctl: command not found" berarti utilitas command-line systemctl tidak tersedia atau tidak dapat diakses di lingkungan saat ini. Penyebabnya bisa bermacam-macam, tetapi semuanya bermuara pada dua hal: lingkungan yang digunakan bukan lingkungan sistem, atau paket systemd belum terpasang di sistem.

Pada dasarnya, paket systemd belum terinstal, atau distro maupun versi Linux yang kamu gunakan memang tidak memakai systemd - melainkan sistem manajemen layanan yang lebih lama seperti init.d. Kemungkinan lain, variabel lingkungan PATH tidak menyertakan direktori tempat systemctl berada, sehingga shell tidak dapat menemukannya.

Sekarang setelah kamu memiliki gambaran tentang apa yang mungkin menjadi penyebab error "systemctl: command not found" di sistemmu, mari kita lihat cara memverifikasi letak masalahnya dan cara memperbaikinya.

Mengatasi Error systemctl: Command Not Found

Pada langkah-langkah berikut, kita akan memeriksa apakah sistem Anda telah menginstal systemd dan menggunakan systemctl atau tidak, sekaligus mengecek path systemctl. Setelah masalahnya teridentifikasi, kita akan mengambil langkah yang diperlukan untuk memperbaiki error tersebut.

1. Memverifikasi Apakah Sistem Anda Menggunakan systemd

Karena Ubuntu systemctl hanya bisa digunakan jika paket systemd sudah terpasang, pertama-tama kita perlu memeriksa apakah sistem kamu menggunakan systemd dengan menjalankan perintah berikut:

ps -p 1 -o comm=

Atau, Anda bisa memeriksa versi systemd dengan perintah berikut:

systemd --version

Jika outputnya adalah systemd, berarti systemd adalah init system yang digunakan dan seharusnya sudah ada Ubuntu systemctl terinstal. Namun, jika outputnya adalah init atau process manager lain, berarti sistem Anda menggunakan initialization system alternatif, dan systemctl tidak akan berfungsi kecuali Anda migrasi ke systemd.

Jika server kamu masih menggunakan sistem inisialisasi lama seperti Upstart atau SysVinit dan ingin beralih ke systemd untuk menggunakan systemctl, ikuti langkah-langkah berikut:

1. Instal systemctl dengan menginstal systemd menggunakan perintah berikut:

sudo apt install systemd-sysv

2. Reboot sistem Anda dengan menjalankan perintah ini:

sudo reboot

3. Periksa apakah sistem Anda sekarang menggunakan systemd:

ps -p 1 -o comm=

Output sekarang seharusnya menampilkan systemd.

2. Memastikan systemd Terinstal dengan Benar

Dalam kondisi normal, jika systemd sudah terinstal dan berjalan sebagai init system, perintah systemctl seharusnya bekerja dengan baik. Jika tidak, kemungkinan paket systemd belum terinstal atau installasinya bermasalah.

Perlu diperhatikan bahwa jika kamu menggunakan versi minimal dari Ubuntu, seperti container Docker atau cloud instance, systemd mungkin tidak terinstal secara default. Untuk menginstal systemctl melalui instalasi systemd, jalankan perintah berikut:

sudo apt update
sudo apt install systemd

Setelah terinstal, cek apakah perintah systemctl sudah tersedia.

3. Memeriksa PATH systemctl

Salah satu penyebab umum error systemctl not found adalah systemctl sudah terinstal, tetapi lokasinya tidak ada di PATH sistem kamu. Untuk memeriksa apakah binary systemd ada di direktori umum seperti /bin, /usr/bin, atau /usr/local/bin, jalankan perintah berikut:

which systemctl

Jika systemctl ditemukan di salah satu direktori yang terdaftar di PATH, output-nya akan terlihat seperti ini:

/usr/bin/systemctl

Jika systemctl tidak ditemukan di direktori mana pun dalam PATH, perintah which tidak akan mengembalikan hasil apa pun.

Namun, systemctl bisa saja tetap tidak berfungsi meskipun ditemukan di salah satu direktori kamu. Ini terjadi karena systemctl mungkin berada di direktori yang tidak tercantum dalam PATH. Dalam situasi ini, kamu perlu memverifikasi apakah direktori tempat systemctl berada sudah termasuk dalam PATH sistem dengan perintah berikut:

echo $PATH

Output-nya akan terlihat seperti ini:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

Sekarang, yang perlu kamu lakukan hanyalah memeriksa apakah direktori tempat systemctl berada (yang kamu dapatkan dari perintah which) sudah tercantum dalam output perintah echo $PATH.

Jika direktori systemctl tidak muncul dalam output echo $PATH, kamu perlu menambahkannya ke variabel PATH. Caranya, jalankan perintah berikut:

Untuk Pengguna Bash shell, buka file ~/.bashrc di text editor:

nano ~/.bashrc

Tambahkan baris berikut di akhir file:

export PATH=$PATH:/usr/bin

/usr/bin adalah contoh direktori umum tempat systemctl berada dalam contoh ini.

Setelah itu, simpan dan tutup file dengan menekan CTRL + X, lalu Y untuk konfirmasi, dan Enter untuk menyimpan.

Untuk Pengguna Zsh, Buka file ~/.zshrc di text editor:

nano ~/.zshrc

Tambahkan baris berikut di akhir file:

export PATH=$PATH:/usr/bin

/usr/bin adalah contoh direktori umum tempat systemctl berada dalam contoh ini.

Setelah itu, simpan dan tutup file dengan menekan CTRL + X, lalu Y untuk konfirmasi, dan Enter untuk menyimpan.

Setelah langkah-langkah di atas selesai, gunakan perintah echo $PATH untuk memverifikasi apakah direktori systemctl kamu sudah ditambahkan ke PATH. Sekarang kamu seharusnya bisa menjalankan systemctl tanpa menemui error "systemctl: command not found".

4. Menginstal ulang systemd

Jika solusi sebelumnya tidak berhasil dan kamu masih menghadapi error command not found, menginstal ulang systemd secara menyeluruh mungkin bisa menyelesaikan masalah ini. Jalankan perintah berikut:

sudo apt purge systemd
sudo apt install systemd

Kemudian, reboot sistem kamu dengan perintah ini:

sudo reboot

Cek apakah systemctl sudah berfungsi.

5. Memverifikasi Konfigurasi systemd

Terkadang, masalahnya sesederhana konfigurasi instalasi systemd yang keliru, sehingga muncul error "systemctl: command not found". Yang perlu kamu lakukan untuk memperbaiki masalah ini hanyalah menjalankan perintah berikut:

sudo dpkg-reconfigure systemd

6. Subsistem Windows yang Sudah Usang untuk Linux (WSL)

Jika kamu menggunakan Ubuntu di bawah WSL (Subsistem Windows untuk Linux) perlu diketahui bahwa versi lama WSL, seperti WSL 1, tidak mendukung systemctl secara bawaan. Jadi, tidak peduli perbaikan mana yang kamu coba dari langkah-langkah sebelumnya, systemctl tetap tidak akan bisa dijalankan.

Jika kamu ingin menggunakan fungsi systemctl, kamu perlu upgrade ke WSL 2 yang memiliki dukungan lebih baik untuk systemd. Jika kamu tidak yakin apakah sedang menggunakan WSL atau tidak, cek dengan perintah berikut:

uname -a

Jika output menyebutkan WSL, itulah penyebab error "systemctl: command not found" yang kamu lihat.

7. Menggunakan sudo Service sebagai Alternatif systemctl

Jika kamu mendapat error "systemctl: command not found" karena sistem tidak menggunakan systemd, kamu bisa menggunakan perintah sudo service untuk mengelola layanan. Perintah ini bekerja dengan init system lama seperti SysVinit atau Upstart, dan berguna untuk sistem Ubuntu yang masih mengandalkan init script alih-alih systemd.

Misalnya, untuk menjalankan sebuah layanan, gunakan perintah berikut:

sudo service <service_name> start

Pemikiran Akhir

systemd beserta utilitas baris perintah systemctl kini telah menggantikan sebagian besar init system lama seperti SysVinit dan Upstart. Meskipun systemd tidak selalu menjadi pilihan semua orang karena desainnya yang monolitik dan pendekatannya yang dianggap tidak sesuai filosofi Unix, systemd tetap menjadi pilihan yang paling umum digunakan saat ini. Semoga kamu sudah berhasil mengatasi error systemctl command not available ini, karena tanpa utilitas baris perintah systemd, banyak kemampuan sistem yang tidak bisa dimanfaatkan.

Pertanyaan yang Sering Diajukan

Apa Itu systemctl dan Apa Maksud Error systemctl: Command Not Found?

systemctl adalah alat baris perintah untuk mengelola layanan di sistem Linux yang menggunakan systemd, seperti Ubuntu. Error "systemctl: command not found" muncul ketika alat ini tidak tersedia atau tidak bisa diakses, biasanya karena sistem tidak menggunakan systemd atau paket systemd belum terinstal.

Apakah systemctl Tersedia di Semua Versi Ubuntu?

Tidak, systemctl tidak tersedia di semua versi Ubuntu. systemctl adalah bagian dari init system systemd, yang menjadi default di sebagian besar versi Ubuntu modern (mulai versi 15.04 ke atas). Versi lama atau instalasi minimal tertentu mungkin menggunakan init system alternatif seperti SysVinit atau Upstart.

Bagikan

Artikel lainnya dari blog

Terus baca.

Gambar sampul Best Self-Hosted Apps You Can Run with Cosmos Cloud dengan panel aplikasi di sekitar dashboard Cosmos.
Servidor & Sistem Operasi

Aplikasi Self-Hosted Terbaik yang Bisa Anda Jalankan dengan Cosmos Cloud: File, Media, Password, Otomasi, dan Lainnya!

Maybe Anda sudah menyiapkan Cosmos Cloud dan ingin tahu aplikasi apa yang cocok digunakan bersamanya, atau mungkin Anda belum memutuskan untuk pakai Cosmos dan hanya ingin melihat seberapa baik ia cocok dengan alur kerja Anda

Nick SilverNick Silver bacaan 16 menit
Portainer vs Cosmos Cloud untuk Mengelola Aplikasi Docker, dengan diagram setup hybrid dan blok ops vs akses berneon.
Servidor & Sistem Operasi

Portainer vs Cosmos Cloud: Pilihan Terbaik untuk Manajemen Aplikasi Docker

Jika Anda sudah mengenal Docker dan ingin cara yang lebih rapi untuk menjalankan tumpukan aplikasi yang terus berkembang, ini jawaban singkat soal Portainer vs Cosmos Cloud. Portainer adalah pilihan yang lebih kuat untuk peng

Nick SilverNick Silver 14 menit baca
Grafik fitur Cosmos Cloud vs CasaOS vs Umbrel yang menampilkan tiga jalur self-hosted dalam satu jaringan cloud abstrak.
Servidor & Sistem Operasi

Cosmos Cloud vs CasaOS vs Umbrel: Platform Self-Hosted Mana yang Cocok untuk Setup Anda?

Singkatnya, CasaOS masih menjadi tempat termudah untuk memulai, Umbrel menawarkan tampilan yang paling rapi dan terkurasi, sedangkan Cosmos Cloud lebih masuk akal ketika Anda menginginkan kendali lebih ketat atas doma

Nick SilverNick Silver 11 menit baca

Siap untuk di-deploy? Mulai dari $2.48/bulan.

Cloud independen, sejak 2008. AMD EPYC, NVMe, 40 Gbps. Garansi uang kembali 14 hari.