Controling Services and Daemons
Tags: ramadhanbersamaredhat
Published: 2024-03-19 04:44:37

**Identifying Automatically Started System Processes**

**Introduction to** _systemd_
Itusystemd daemon mengelola startup untuk Linux, termasuk startup layanan dan manajemen layanan secara umum.
Daemon adalah proses yang menunggu atau berjalan di latar belakang, melakukan berbagai tugas. Umumnya, daemon dimulai secara otomatis saat boot dan terus berjalan hingga dimatikan atau dihentikan secara manual. Ini adalah konvensi untuk nama banyak program daemon yang diakhiri dengan huruf d.
Amelayanidalam systemdartian sering mengacu pada satu atau lebih daemon, namun memulai atau menghentikan suatu layanan malah dapat membuat perubahan satu kali pada keadaan sistem, yang tidak melibatkan membiarkan proses daemon berjalan setelahnya (disebut oneshot).
Di Red Hat Enterprise Linux, proses pertama yang dimulai (PID 1) adalah systemd. Beberapa fitur yang disediakan antara systemdlain:

- Kemampuan paralelisasi (memulai beberapa layanan secara bersamaan), yang meningkatkan kecepatan booting suatu sistem.
- Memulai daemon sesuai permintaan tanpa memerlukan layanan terpisah.
- Manajemen ketergantungan layanan otomatis, yang dapat mencegah waktu tunggu yang lama.
- Sebuah metode pelacakan proses terkait bersama-sama dengan menggunakan grup kontrol Linux.

**Describing Service Units**

- Unit layanan.Service ekstensi dan mewakili layanan sistem. Unit jenis ini digunakan untuk memulai daemon yang sering diakses, seperti server web
- Unit soket. Unit soket digunakan untuk menunda dimulainya layanan pada waktu boot dan untuk memulai layanan yang jarang digunakan sesuai permintaan.
- Unit jalur. pathekstensi dan digunakan untuk menunda aktivasi layanan hingga terjadi perubahan sistem file tertentu. Ini biasanya digunakan untuk layanan yang menggunakan direktori spool seperti sistem pencetakan.

Perintah systemctl digunakan untuk mengelola unit. Misalnya, tampilkan tipe unit yang tersedia dengan perintah systemctl -t help .

**IMPORTANT**
Saat menggunakan systemctl , Anda dapat menyingkat nama unit, entri pohon proses, dan deskripsi unit.

**Listing Service Units**
perintah systemctl untuk menjelajahi keadaan sistem saat ini. Misalnya, perintah berikut mencantumkan semua unit layanan yang sedang dimuat, memberi nomor halaman pada output menggunakan less.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lft239izkb7o7nrmzesv.png)

Secara default, perintah systemctl list-units --type=service hanya mencantumkan unit layanan dengan activestatus aktivasi. Opsi ini --allmencantumkan semua unit layanan terlepas dari status aktivasi. Gunakan --state=opsi untuk memfilter menurut nilai di bidang LOAD, ACTIVE, atau SUB.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9cwekgdji49oeh1izboo.png)

Perintah systemctl tanpa argumen apa pun mencantumkan unit yang dimuat dan aktif.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4cxyd6glk3034t3pbpun.png)

Perintah systemctl list-units menampilkan unit yang systemdcoba diurai dan dimuat oleh layanan ke dalam memori; itu tidak menampilkan layanan yang diinstal, tetapi tidak diaktifkan. Untuk melihat status semua file unit yang diinstal, gunakan perintah systemctl list-unit-files .

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s323cl1wa6mthj4w97yh.png)
Dalam output perintah systemctl list-units-files , entri yang valid untuk STATEbidang tersebut adalah enabled, disabled, static, dan masked.

**Viewing Service States**
Lihat status unit tertentu dengan status systemctlname.type. Jika tipe unit tidak tersedia, systemctl akan menampilkan status unit layanan, jika ada.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/189nn580fn940eqcoozw.png)
Perintah ini menampilkan status layanan saat ini. Arti dari field adalah:

**Table 9.1. Service Unit Information**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/itd97uz46iwmil5yx88s.png)

Beberapa kata kunci yang menunjukkan status layanan dapat ditemukan di keluaran status:
**Table 9.2. Service States in the Output of systemctl**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t3vybl2nf6xsj0ktcinl.png)

**NOTED**
Status sistemctlNAMEperintah menggantikan layananNAMEperintah status yang digunakan di Red Hat Enterprise Linux 6 dan versi lebih lama.

**Verifying the Status of a Service**
Perintah systemctl menyediakan metode untuk memverifikasi status layanan tertentu. Misalnya, gunakan perintah berikut untuk memverifikasi bahwa unit layanan sedang aktif (berjalan):
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qcew9hiplys31oz0xi4e.png)
Perintah ini mengembalikan status unit layanan, yang biasanya berupa activeatau inactive.

Jalankan perintah berikut untuk memverifikasi apakah unit layanan diaktifkan untuk memulai secara otomatis selama boot sistem:
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/arxbp9rlu08wulxfxtas.png)
Perintah ini mengembalikan apakah unit layanan diaktifkan untuk memulai pada waktu boot, yang biasanya enabledatau disabled.

Untuk memverifikasi apakah unit gagal saat startup, jalankan perintah berikut:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/px8d0kcx76h4tmuxg6pu.png)
Perintah akan kembali activejika dijalankan dengan benar atau failedjika terjadi kesalahan saat startup. Jika unit dihentikan, ia akan kembali unknownatau inactive.

Untuk membuat daftar semua unit yang gagal, jalankan perintah systemctl --failed --type=service