GNU/Linux >> Belajar Linux >  >> Linux

Daftar Layanan Linux dengan Systemctl

Di Linux, layanan adalah program yang berjalan di latar belakang. Layanan dapat dimulai sesuai permintaan atau saat boot.

Jika Anda menggunakan Linux sebagai sistem operasi atau pengembangan utama Anda, platform Anda akan menangani berbagai layanan seperti server web, ssh atau, cron. Mengetahui cara membuat daftar layanan yang berjalan atau memeriksa status layanan adalah penting saat men-debug masalah sistem.

Sebagian besar distribusi Linux baru-baru ini menggunakan systemd sebagai sistem init dan manajer layanan default.

Systemd adalah seperangkat alat untuk mengelola sistem Linux. Ini digunakan untuk mem-boot mesin, mengelola layanan, mengotomatiskan sistem file, mencatat peristiwa, mengatur nama host, dan tugas sistem lainnya.

Artikel ini menjelaskan cara membuat daftar layanan di Linux.

Mendaftarkan Layanan Linux #

Systemd menggunakan konsep unit, yang dapat berupa layanan, soket, titik pemasangan, perangkat, dll. Unit didefinisikan menggunakan file teks di ini format. File-file ini mencakup informasi tentang unit, pengaturannya, dan perintah untuk dieksekusi. Ekstensi nama file menentukan jenis file unit. Misalnya, file unit layanan sistem memiliki .service ekstensi.

systemctl adalah utilitas baris perintah yang digunakan untuk mengontrol systemd dan mengelola layanan. Ini adalah bagian dari ekosistem systemd dan tersedia secara default di semua sistem.

Untuk mendapatkan daftar semua unit layanan yang dimuat, ketik:

sudo systemctl list-units --type service
UNIT          LOAD      ACTIVE SUB     DESCRIPTION                                                              
cron.service  loaded    active running Regular background program processing daemon 
...

Setiap baris output berisi kolom berikut dari kiri ke kanan:

  • UNIT - Nama unit layanan.
  • LOAD - Informasi tentang apakah file unit telah dimuat di memori.
  • ACTIVE - Status aktivasi file unit tingkat tinggi, yang dapat aktif, memuat ulang, tidak aktif, gagal, mengaktifkan, menonaktifkan. Ini adalah generalisasi dari SUB kolom.
  • SUB - Status aktivasi file unit tingkat rendah. Nilai bidang ini tergantung pada jenis unit. Misalnya, unit layanan jenis dapat berada dalam salah satu status berikut, mati, keluar, gagal, tidak aktif, atau berjalan.
  • DESCRIPTION - Deskripsi singkat dari file unit.

Secara default, perintah hanya mencantumkan unit aktif yang dimuat. Untuk melihat unit yang dimuat tetapi tidak aktif juga, teruskan --all pilihan:

sudo systemctl list-units --type service --all

Jika Anda ingin melihat semua file unit yang terinstal, tidak hanya yang dimuat, gunakan:

sudo systemctl list-unit-files

Menampilkan Status Layanan #

Untuk memeriksa status layanan, gunakan systemctl status perintah:

sudo systemctl status <service_name>.service

Dimana <service_name> adalah nama unit layanan yang ingin Anda periksa. Misalnya untuk menentukan status layanan nginx saat ini yang akan Anda jalankan:

sudo systemctl status nginx.service
Anda dapat menghilangkan akhiran “.service”. systemctl status nginx sama dengan systemctl status nginx.service .
● nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2020-12-23 19:13:50 UTC; 5s ago
       Docs: man:nginx(8)
    Process: 3061052 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
    Process: 3061063 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
   Main PID: 3061064 (nginx)
      Tasks: 2 (limit: 470)
     Memory: 6.0M
     CGroup: /system.slice/nginx.service
             ├─3061064 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             └─3061065 nginx: worker process

Dec 23 19:13:50 linuxize.dev systemd[1]: Starting A high performance web server and a reverse proxy server...

Perintah akan mencetak informasi berikut:

  • Loaded - Apakah unit layanan telah dimuat dan path lengkap ke file unit. Ini juga menunjukkan apakah unit diaktifkan untuk memulai saat boot.
  • Active - Apakah layanan aktif dan berjalan. Jika terminal Anda mendukung warna dan layanan aktif dan berjalan, titik ( ) dan bagian “aktif (berjalan)” akan dicetak dengan warna hijau. Baris juga menunjukkan berapa lama layanan berjalan.
  • Docs - Dokumentasi layanan.
  • Process - Informasi tentang proses layanan.
  • Main PID - PID layanan.
  • Tasks - Jumlah tugas yang dihitung untuk unit dan batas tugas.
  • Memory - Informasi tentang memori yang digunakan.
  • CGroup - Informasi tentang Grup Kontrol terkait.

Jika Anda hanya ingin memeriksa status layanan, gunakan systemctl is-active memerintah. Misalnya, untuk memverifikasi bahwa layanan nginx berjalan, Anda akan menjalankan:

systemctl is-active nginx.service
active

Perintah akan menunjukkan kepada Anda status layanan. Jika layanan aktif, perintah mengembalikan status keluar 0, yang dapat berguna saat menggunakan perintah di dalam skrip shell.

Kesimpulan #

Kami telah menunjukkan cara menggunakan systemctl perintah untuk membuat daftar layanan Linux dan memeriksa statusnya.


Linux
  1. Cara Menggunakan Perintah Systemctl untuk Mengelola Layanan Systemd

  2. Periksa layanan yang berjalan di Linux

  3. Gunakan Systemctl untuk mengelola layanan

  1. Kelola beberapa instance layanan dengan systemctl

  2. Tutorial Perintah layanan Linux untuk Pemula (dengan Contoh)

  3. Cara Mendaftar Layanan Systemd di Linux

  1. Cara Mengelola Layanan Systemd dengan Systemctl di Linux

  2. Menyiapkan pengalihan port di Linux dengan ncat

  3. Bagaimana mengelola Layanan Linux dengan perintah systemctl