antond.net

0 %
Anton Darmawanto
Front-end Developer
Ui/UX Designer
  • Residence:
    Indonesia
  • City:
    Jakarta Selatan
  • Age:
    40
Indonesian
English
Jawa
html
CSS
Js
PHP
WordPress
Proxmox
Laravel
Linux server (ubuntu, debian, fedora)
Alibaba Cloud
  • Proxmox, Vm Ware
  • Stylus, Sass, Less
  • Gulp, Webpack, Grunt
  • GIT knowledge
0

No products in the cart.

Return To Shop

Cara Mengelola Service di Linux dengan systemctl: 6 Perintah Wajib untuk Pemula

10/11/2026

Bayangkan pagi hari Anda membuka toko online, lalu pelanggan mengeluh website tidak bisa dibuka, atau komputer kasir tiba-tiba tidak bisa terhubung ke server. Penyebabnya sering kali sederhana: ada satu program penting di server Linux yang sedang mati. Program yang berjalan diam-diam di latar belakang seperti inilah yang disebut service, atau daemon dalam bahasa Linux.

Service inilah yang menghidupkan website Anda (misalnya nginx atau apache2), melayani koneksi jarak jauh (ssh), sampai mengatur database toko (mysql). Begitu satu service berhenti, bagian yang bergantung padanya ikut berhenti.

Di Linux modern, hampir semua distro populer seperti Ubuntu memakai pengatur bernama systemd yang menyalakan dan mengawasi semua service sejak komputer dinyalakan. Sementara systemctl adalah perintah untuk memberi instruksi kepada systemd, ibarat remote control untuk semua service. Kabar baiknya, Anda hanya perlu menguasai 6 perintah systemctl berikut untuk kebutuhan sehari-hari.

1. systemctl status: Cek Apakah Service Sedang Jalan

Biasakan mengecek dulu sebelum mengutak-atik apa pun. Perintah systemctl status menampilkan kondisi service secara lengkap dan menjadi langkah pertama setiap kali ada masalah.

sudo systemctl status nginx

Baris Loaded menunjukkan apakah service diatur jalan otomatis saat boot (enabled) atau tidak (disabled). Baris Active adalah yang paling penting: active (running) berarti service berjalan normal, inactive (dead) berarti service sedang berhenti, dan failed berarti service gagal jalan. Di bawahnya ada Main PID dan beberapa baris log terakhir. Untuk keluar, tekan tombol q.

Kalau hanya butuh jawaban singkat, systemctl is-active nginx hanya mencetak active atau inactive. Perintah cek status ini aman, karena hanya membaca kondisi dan tidak mengubah apa pun.

2. systemctl start: Menyalakan Service yang Mati

Kalau ternyata service sedang berhenti, nyalakan lagi dengan perintah start:

sudo systemctl start apache2

Perintah ini butuh hak administrator, makanya ada sudo di depannya. Setelah itu, terminal biasanya tidak menampilkan apa-apa. Jangan bingung, diam justru kabar baik: tidak ada pesan error berarti perintah berhasil. Untuk memastikan, cek lagi dengan sudo systemctl status apache2. Kalau baris Active sudah menjadi active (running), berarti website Anda sudah hidup lagi.

Cara yang sama berlaku untuk service lain, misalnya sudo systemctl start ssh atau sudo systemctl start mysql. Ingat, perintah start hanya berlaku untuk sesi saat ini; kalau server di-restart, service belum tentu ikut jalan lagi, kecuali diatur dengan perintah nomor lima di bawah.

3. systemctl stop: Mematikan Service untuk Sementara

Kebalikan dari start adalah stop untuk menghentikan service yang sedang berjalan:

sudo systemctl stop apache2

Selama service berhenti, fungsinya ikut berhenti: website tidak bisa diakses atau aplikasi kasir tidak bisa mengambil data. Karena itu, gunakan perintah ini hanya saat maintenance atau saat menonaktifkan service yang tidak terpakai.

Yang sering disalahpahami pemula: stop tidak sama dengan mematikan service selamanya. Kalau service diatur jalan otomatis saat boot, ia akan hidup lagi begitu server di-restart. Jadi, kalau tujuan Anda adalah agar service tidak pernah jalan lagi, Anda juga perlu perintah disable di poin nomor enam. Peringatan penting: jangan pernah menghentikan service ssh saat Anda sedang terhubung jarak jauh, karena Anda bisa kehilangan akses ke server.

4. systemctl restart: Memulai Ulang Saat Service Bermasalah

Perintah restart adalah yang paling sering dipakai saat troubleshooting: ia menghentikan service, lalu menyalakannya lagi dari awal.

sudo systemctl restart apache2

Kapan perintah ini dipakai? Saat service macet atau tidak merespons, setelah mengubah pengaturan (banyak service baru membaca konfigurasi saat pertama kali dijalankan), atau setelah update paket agar service memakai versi terbaru.

Perlu diingat, restart menyebabkan gangguan singkat: koneksi yang sedang aktif terputus sesaat dan website tidak bisa diakses selama beberapa detik, tapi untuk toko online kecil jeda ini biasanya tidak masalah. Kalau Anda hanya mengubah konfigurasi ringan di nginx, pakai reload saja, yang membuat service membaca ulang konfigurasi tanpa mematikan prosesnya. Jadi, reload untuk perubahan kecil, restart untuk masalah yang lebih serius. Setelah restart, selalu verifikasi dengan systemctl status.

5. systemctl enable: Agar Service Jalan Otomatis Saat Boot

Perintah ini mengatur agar service otomatis menyala setiap kali komputer atau server dinyalakan:

sudo systemctl enable ssh

Bayangkan listrik toko padam, lalu server menyala lagi. Tanpa enable, Anda harus menyalakan service satu per satu secara manual. Dengan enable, nginx, ssh, dan mysql menyala sendiri begitu server hidup.

Kesalahan paling umum pemula adalah mengira enable sama dengan start. Padahal keduanya berbeda: start menyalakan service sekarang, tapi tidak menjamin service menyala lagi setelah reboot, sedangkan enable hanya mengatur jadwal saat boot, tapi tidak menyalakan service yang sedang mati saat ini. Karena itu, setelah memasang service baru, gunakan sudo systemctl enable --now nginx untuk enable sekaligus start dalam satu perintah.

6. systemctl disable: Agar Service Tidak Jalan Otomatis Saat Boot

Kebalikan dari enable adalah disable. Perintah ini mencegah service menyala otomatis saat boot:

sudo systemctl disable bluetooth

Sama seperti enable, perintah ini tidak langsung menghentikan service yang sedang berjalan, hanya menghapusnya dari daftar yang otomatis jalan saat boot. Kalau service itu sedang jalan dan Anda ingin langsung mematikannya juga, tambahkan opsi --now, contohnya sudo systemctl disable --now bluetooth. Cek hasilnya dengan systemctl is-enabled bluetooth, yang akan mencetak disabled.

Disable berguna untuk service yang tidak terpakai agar tidak membebani server. Tapi hati-hati, jangan men-disable service sistem yang Anda tidak kenal fungsinya. Kalau ragu, cek dulu dengan systemctl status nama-service.

Cara Melihat Semua Service yang Berjalan

Selain mengecek satu service, kadang Anda ingin melihat gambaran besar: service apa saja yang sedang aktif di server? Gunakan perintah berikut:

systemctl list-units --type=service --state=running

Perintah ini menampilkan daftar service yang sedang berjalan lengkap dengan deskripsinya. Kalau daftarnya terlalu panjang, Anda bisa menyaringnya, misalnya hanya yang sedang gagal dengan mengganti --state=running menjadi --state=failed. Daftar ini berguna saat server terasa berat, untuk menemukan service tak dikenal yang memakan sumber daya.

Cek Log Service dengan journalctl

Ketika status menunjukkan failed, langkah berikutnya adalah membaca log, yaitu catatan aktivitas service. Di Linux modern, log ini dibaca dengan perintah journalctl:

sudo journalctl -u nginx

Tambahkan opsi -n 50 untuk menampilkan 50 baris terakhir saja. Biasanya, baris terakhir log sudah memberi petunjuk: port sudah dipakai service lain, file konfigurasi salah ketik, atau izin file tidak benar. Dengan log, Anda tidak perlu menebak-nebak penyebab masalah.

Tips Aman Sebelum Mengelola Service

Mengelola service itu mudah, tapi ada beberapa aturan aman yang wajib diingat. Pertama, selalu cek status dulu sebelum mengubah apa pun. Kedua, jangan asal menghentikan service sistem yang tidak Anda kenal, seperti systemd-networkd, karena server bisa kehilangan jaringan. Ketiga, catat setiap perubahan yang Anda lakukan, supaya mudah dikembalikan kalau terjadi kesalahan. Keempat, lakukan perubahan besar di jam sepi. Dan yang paling penting, kalau mengelola server jarak jauh, jangan pernah mematikan ssh dari dalam koneksi ssh itu sendiri.

Kesimpulan

Mengelola service di Linux ternyata tidak serumit yang dibayangkan. Dengan enam perintah systemctl saja, yaitu status, start, stop, restart, enable, dan disable, Anda sudah bisa menangani sebagian besar masalah sehari-hari di server Ubuntu. Tambahkan list-units dan journalctl, maka kemampuan troubleshooting Anda sudah jauh di atas rata-rata pemula.

Untuk pemilik UMKM, kemampuan ini sangat berharga: server kasir, website toko, dan database tidak perlu menunggu teknisi setiap kali ada gangguan kecil. Cukup buka terminal, cek status, dan nyalakan kembali service yang mati, maka usaha Anda bisa kembali berjalan dalam hitungan menit. Mulailah berlatih dengan perintah aman seperti status dan list-units.

Posted in Tips & TrikTags: