One place for hosting & domains

      Cara Menggunakan Systemctl untuk Mengelola Layanan dan Unit Systemd


      Pengantar

      Systemd adalah sistem init dan pengelola sistem yang secara luas telah menjadi standar baru untuk berbagai distribusi Linux. Karena digunakan secara luas, memahami systemd akan mengatasi banyak masalah, karena ini akan membuat pengelolaan server menjadi jauh lebih mudah. Mempelajari dan memanfaatkan berbagai alat dan daemon yang meliputi systemd akan membantu Anda menghargai kehebatan, fleksibilitas, dan kemampuan yang diberikannya dengan lebih baik, atau setidaknya membantu Anda melakukan pekerjaan tanpa banyak kesulitan.

      Dalam panduan ini, kita akan membahas perintah systemctl, yang merupakan alat manajemen pusat untuk mengontrol sistem init. Kita akan membahas cara mengelola layanan, memeriksa status, mengubah keadaan sistem, dan menangani berkas konfigurasi.

      Harap diperhatikan bahwa meskipun systemd telah menjadi sistem init asali untuk banyak distribusi Linux, tetapi tidak diterapkan secara universal ke semua distribusi. Saat mengikuti tutorial ini, jika terminal Anda memberikan keluaran pesan kesalahan bash: systemctl is not installed, kemungkinan mesin Anda menginstal sistem init yang berbeda.

      Manajemen Layanan

      Kegunaan mendasar dari sistem init adalah menginisialisasi komponen yang harus dimulai setelah kernel Linux melakukan boot (biasanya dikenal dengan komponen “userland”). Sistem init juga digunakan untuk mengelola layanan dan daemon bagi server di titik apa pun selama sistem dijalankan. Dengan mengingat hal itu, kita akan mulai dengan beberapa operasi manajemen layanan dasar.

      Di systemd, target sebagian besar tindakan adalah “unit”, yakni sumber daya yang diketahui cara pengelolaannya oleh systemd. Unit dikelompokkan menurut tipe sumber daya yang diwakilinya dan didefinisikan bersama berkas yang dikenal dengan berkas unit. Tipe setiap unit dapat ditebak dari akhiran di belakang berkas.

      Untuk tugas manajemen layanan, unit target akan berupa unit layanan, yang memiliki berkas unit dengan akhiran .service. Namun, untuk kebanyakan perintah manajemen layanan, Anda sebenarnya dapat menanggalkan akhiran .service, karena systemd sudah cukup cerdas untuk mengetahui bahwa Anda mungkin ingin mengoperasikan suatu layanan saat menggunakan perintah manajemen layanan.

      Memulai dan Menghentikan Layanan

      Untuk memulai layanan systemd, yang mengeksekusi instruksi dalam berkas unit layanan, gunakan perintah start. Jika menjalankan sebagai pengguna non-root, Anda akan perlu menggunakan sudo karena ini akan memengaruhi keadaan sistem operasi:

      • sudo systemctl start application.service

      Seperti yang kami sebutkan di atas, systemd tahu untuk mencari berkas *.service untuk perintah manajemen layanan, sehingga perintah dapat diketikkan semudah ini:

      • sudo systemctl start application

      Meskipun Anda mungkin menggunakan format di atas untuk administrasi umum, demi kejelasan, kita akan menggunakan akhiran .service untuk perintah selebihnya, agar target operasi kita lebih jelas.

      Untuk menghentikan layanan yang sedang berjalan, Anda dapat menggunakan perintah stop sebagai gantinya:

      • sudo systemctl stop application.service

      Memulai Ulang dan Memuat Ulang

      Untuk memulai ulang layanan yang sedang berjalan, Anda dapat menggunakan perintah restart:

      • sudo systemctl restart application.service

      Jika aplikasi tersebut dapat memuat ulang berkas konfigurasinya (tanpa memulai ulang), Anda dapat memberikan perintah reload untuk memulai proses:

      • sudo systemctl reload application.service

      Jika tidak yakin apakah layanan memiliki fungsionalitas untuk memuat ulang konfigurasinya, Anda dapat memberikan perintah reload-or-restart. Perintah ini akan memuat ulang konfigurasi jika tersedia. Jika tidak, perintah ini akan memulai ulang layanan sehingga konfigurasi baru akan diambil:

      • sudo systemctl reload-or-restart application.service

      Mengaktifkan dan Menonaktifkan Layanan

      Perintah di atas berguna untuk memulai atau menghentikan layanan selama sesi yang berjalan saat ini. Untuk memberi tahu systemd agar memulai layanan secara otomatis saat boot, Anda harus mengaktifkannya.

      Untuk memulai layanan saat boot, gunakan perintah enable:

      • sudo systemctl enable application.service

      Ini akan membuat tautan simbolis dari salinan berkas layanan sistem (biasanya di /lib/systemd/system atau /etc/systemd/system) ke dalam lokasi di diska tempat systemd mencari berkas autostart (biasanya /etc/systemd/system/some_target.target.wants. Kita akan membahas targetnya nanti dalam panduan ini).

      Untuk menonaktifkan layanan agar tidak dimulai secara otomatis, Anda dapat mengetikkan:

      • sudo systemctl disable application.service

      Ini akan menghapus tautan simbolis yang menandakan bahwa layanan harus dimulai secara otomatis.

      Ingatlah bahwa mengaktifkan layanan tidak akan memulainya di sesi saat ini. Jika Anda ingin memulai layanan dan juga mengaktifkannya saat boot, Anda harus memberikan perintah start dan enable.

      Memeriksa Status Layanan

      Untuk memeriksa status layanan di sistem, Anda dapat menggunakan perintah status:

      • systemctl status application.service

      Perintah ini akan memberi tahu Anda keadaan layanan, hierarki cgroup, dan beberapa baris log pertama.

      Misalnya, saat memeriksa status server Nginx, Anda mungkin melihat keluaran seperti ini:

      Output

      ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled) Active: active (running) since Tue 2015-01-27 19:41:23 EST; 22h ago Main PID: 495 (nginx) CGroup: /system.slice/nginx.service ├─495 nginx: master process /usr/bin/nginx -g pid /run/nginx.pid; error_log stderr; └─496 nginx: worker process Jan 27 19:41:23 desktop systemd[1]: Starting A high performance web server and a reverse proxy server... Jan 27 19:41:23 desktop systemd[1]: Started A high performance web server and a reverse proxy server.

      Ini memberikan gambaran bagus tentang status aplikasi saat ini, yang memberi tahu Anda masalah dan tindakan yang mungkin diperlukan.

      Ada juga metode untuk memeriksa keadaan tertentu. Misalnya, untuk memeriksa agar tahu apakah suatu unit sedang aktif (berjalan), Anda dapat menggunakan perintah is-active:

      • systemctl is-active application.service

      Ini akan menunjukkan keadaan unit saat ini, yang biasanya berupa active atau inactive. Kode yang keluar akan “0” jika aktif, sehingga membuat hasilnya jadi lebih mudah diurai dalam skrip shell.

      Untuk melihat apakah unit diaktifkan, Anda dapat menggunakan perintah is-enabled:

      • systemctl is-enabled application.service

      Ini akan memberikan keluaran apakah layanan enabled atau disabled dan akan menetapkan lagi kode keluar ke “0” atau “1”, tergantung jawaban terhadap pertanyaan perintah.

      Pemeriksaan ketiga adalah apakah unit dalam keadaan gagal. Ini menandakan adanya masalah saat memulai unit tersebut:

      • systemctl is-failed application.service

      Hasilnya akan menjadi active jika berjalan dengan benar atau failed jika terjadi kesalahan. Jika unit sengaja dihentikan, hasilnya mungkin akan berupa unknown atau inactive. Status keluar “0” menandakan terjadi suatu kegagalan dan status keluar “1” menandakan status lainnya.

      Gambaran Umum Keadaan Sistem

      Sejauh ini, perintah berguna untuk mengelola layanan tunggal, tetapi tidak terlalu berguna untuk mempelajari keadaan sistem saat ini. Ada sejumlah sejumlah perintah systemctl yang memberikan informasi ini.

      Menampilkan Daftar Unit Saat Ini

      Untuk melihat daftar semua unit aktif yang diketahui systemd, kita dapat menggunakan perintah list-units:

      Perintah ini akan menampilkan semua unit systemd yang saat ini aktif di sistem. Keluarannya akan terlihat seperti ini:

      Output

      UNIT LOAD ACTIVE SUB DESCRIPTION atd.service loaded active running ATD daemon avahi-daemon.service loaded active running Avahi mDNS/DNS-SD Stack dbus.service loaded active running D-Bus System Message Bus dcron.service loaded active running Periodic Command Scheduler dkms.service loaded active exited Dynamic Kernel Modules System getty@tty1.service loaded active running Getty on tty1 . . .

      Keluarannya memiliki kolom berikut:

      • UNIT: Nama unit systemd
      • LOAD: Apakah konfigurasi unit telah diurai oleh systemd. Konfigurasi unit yang dimuat tersimpan dalam memori.
      • ACTIVE: Ringkasan keadaan apakah unit aktif. Ini biasanya cara yang cukup mendasar untuk mengetahui apakah unit berhasil dimulai atau tidak.
      • SUB: Ini tingkat keadaan lebih rendah yang menunjukkan informasi lebih detail tentang unit. Ini seringkali bervariasi menurut tipe unit, keadaan, dan metode aktual unit yang dijalankan.
      • DESCRIPTION: Deskripsi teks singkat tentang apa yang dilakukan unit.

      Karena perintah list-units hanya menampilkan unit aktif secara asali, semua entri di atas akan menampilkan loaded dalam kolom LOAD dan active dalam kolom ACTIVE. Tampilan ini sebenarnya adalah perilaku asali systemctl bila dipanggil tanpa perintah tambahan, sehingga Anda akan melihat hal yang sama jika memanggil systemctl tanpa argumen:

      Kita dapat menyuruh systemctl agar mengeluarkan informasi yang berbeda dengan memberikan bendera tambahan. Misalnya, untuk melihat semua unit yang telah dimuat (atau berupaya dimuat) oleh systemd , entah saat ini aktif atau tidak, Anda dapat menggunakan bendera --all, seperti ini:

      • systemctl list-units --all

      Ini akan menampilkan unit yang telah dimuat atau berupaya dimuat oleh systemd, terlepas dari keadaannya saat ini di sistem. Beberapa unit menjadi tidak aktif setelah berjalan, dan beberapa unit yang berupaya dimuat oleh systemd mungkin tidak ditemukan pada diska.

      Anda dapat menggunakan bendera lain untuk menyaring hasil ini. Misalnya, kita dapat menggunakan bendera --state= untuk menandai keadaan LOAD, ACTIVE, atau SUB yang ingin kita lihat. Anda harus mempertahankan bendera --all agar systemctl mengizinkan unit nonaktif untuk ditampilkan:

      • systemctl list-units --all --state=inactive

      Filter umum lainnya adalah filter --type=. Kita dapat menyuruh systemctl agar hanya menampilkan unit dengan tipe yang kita minati. Misalnya, untuk melihat unit layanan aktif saja, kita dapat menggunakan:

      • systemctl list-units --type=service

      Menampilkan Daftar Semua Berkas Unit

      Perintah list-units hanya menampilkan unit yang telah berupaya diurai dan dimuat systemd ke dalam memori. Karena systemd hanya akan membaca unit yang dianggapnya perlu, maka tidak perlu menyertakan semua unit yang tersedia di sistem. Untuk melihat setiap berkas unit yang tersedia dalam jalur systemd, termasuk berkas yang tidak berupaya dimuat oleh systemd, Anda dapat menggunakan perintah list-unit-files sebagai gantinya:

      • systemctl list-unit-files

      Unit adalah representasi dari sumber daya yang diketahui systemd. Karena systemd menganggap belum perlu membaca semua definisi unit di tampilan ini, systemd hanya menampilkan informasi tentang berkas itu saja. Keluarannya memiliki dua kolom: berkas unit dan keadaan.

      Output

      UNIT FILE STATE proc-sys-fs-binfmt_misc.automount static dev-hugepages.mount static dev-mqueue.mount static proc-fs-nfsd.mount static proc-sys-fs-binfmt_misc.mount static sys-fs-fuse-connections.mount static sys-kernel-config.mount static sys-kernel-debug.mount static tmp.mount static var-lib-nfs-rpc_pipefs.mount static org.cups.cupsd.path enabled . . .

      Keadaan biasanya berupa enabled, disabled, static, atau masked. Dalam konteks ini, static berarti berkas unit tidak berisi bagian install, yang digunakan untuk mengaktifkan unit. Dengan demikian, unit-unit ini tidak dapat diaktifkan. Biasanya, ini berarti unit melakukan tindakan sekali-jalan atau hanya digunakan sebagai dependensi unit lain dan tidak boleh dijalankan dengan sendirinya.

      Kita akan membahas makna masked sebentar lagi.

      Manajemen Unit

      Sejauh ini, kita telah menggunakan beberapa layanan dan menampilkan informasi tentang unit dan berkas unit yang diketahui oleh systemd. Namun, kita dapat mengetahui informasi yang lebih spesifik tentang unit menggunakan beberapa perintah tambahan.

      Menampilkan Berkas Unit

      Untuk menampilkan berkas unit yang telah dimuat systemd ke dalam sistemnya, Anda dapat menggunakan perintah cat (ini telah ditambahkan dalam systemd versi 209). Misalnya, untuk melihat berkas unit daemon penjadwalan atd, kita dapat mengetikkan:

      • systemctl cat atd.service

      Output

      [Unit] Description=ATD daemon [Service] Type=forking ExecStart=/usr/bin/atd [Install] WantedBy=multi-user.target

      Keluaran adalah berkas unit yang diketahui systemd sebagai proses yang sedang berjalan. Ini dapat menjadi hal penting jika Anda baru-baru ini telah memodifikasi berkas unit atau jika Anda mengesampingkan beberapa opsi tertentu dalam fragmen berkas unit (kita akan membahasnya nanti).

      Menampilkan Dependensi

      Untuk melihat pohon dependensi unit, Anda dapat menggunakan perintah list-dependencies:

      • systemctl list-dependencies sshd.service

      Perintah ini akan menampilkan pemetaan hierarki yang harus ditangani agar dapat memulai unit tersebut. Dependensi dalam konteks ini meliputi unit-unit yang diperlukan oleh atau yang diinginkan oleh unit di atasnya.

      Output

      sshd.service ├─system.slice └─basic.target ├─microcode.service ├─rhel-autorelabel-mark.service ├─rhel-autorelabel.service ├─rhel-configure.service ├─rhel-dmesg.service ├─rhel-loadmodules.service ├─paths.target ├─slices.target . . .

      Dependensi rekursif hanya ditampilkan untuk unit .target, yang menandakan keadaan sistem. Untuk menampilkan daftar semua dependensi secara rekursif, sertakan bendera --all.

      Untuk menampilkan dependensi terbalik (unit yang bergantung pada unit yang ditentukan), Anda dapat menambahkan bendera --reverse pada perintah. Bendera lain yang berguna adalah --before dan --after, yang dapat digunakan untuk menampilkan unit yang bergantung pada unit yang ditentukan yang masing-masing dimulai sebelum dan setelah unit itu sendiri.

      Memeriksa Properti Unit

      Untuk melihat properti tingkat rendah dari suatu unit, Anda dapat menggunakan perintah show. Perintah ini akan menampilkan daftar properti yang diatur untuk unit yang ditentukan menggunakan format key=value:

      • systemctl show sshd.service

      Output

      Id=sshd.service Names=sshd.service Requires=basic.target Wants=system.slice WantedBy=multi-user.target Conflicts=shutdown.target Before=shutdown.target multi-user.target After=syslog.target network.target auditd.service systemd-journald.socket basic.target system.slice Description=OpenSSH server daemon . . .

      Jika ingin menampilkan properti tunggal, Anda dapat memberikan bendera -p bersama nama properti. Misalnya, untuk melihat konflik yang dimiliki unit sshd.service, Anda dapat mengetikkan:

      • systemctl show sshd.service -p Conflicts

      Output

      Conflicts=shutdown.target

      Melakukan Masking dan Unmasking Unit

      Di bagian manajemen layanan, kita telah melihat cara menghentikan atau menonaktifkan layanan, tetapi systemd juga memiliki kemampuan untuk menandai suatu unit menjadi tidak dapat dimulai sama sekali, secara otomatis atau manual, dengan menautkannya ke /dev/null. Perintah ini disebut masking unit, dan dapat dilakukan dengan perintah mask:

      • sudo systemctl mask nginx.service

      Perintah ini akan mencegah layanan Nginx dimulai, secara otomatis atau manual, selama unit tersebut diberi mask.

      Jika Anda memeriksa list-unit-files, Anda akan melihat layanan kini tercantum sebagai diberi mask:

      • systemctl list-unit-files

      Output

      . . . kmod-static-nodes.service static ldconfig.service static mandb.service static messagebus.service static nginx.service masked quotaon.service static rc-local.service static rdisc.service disabled rescue.service static . . .

      Jika Anda berupaya memulai layanan, Anda akan melihat pesan seperti ini:

      • sudo systemctl start nginx.service

      Output

      Failed to start nginx.service: Unit nginx.service is masked.

      Untuk melakukan unmask di suatu unit, agar unit dapat digunakan lagi, gunakan perintah unmask:

      • sudo systemctl unmask nginx.service

      Ini akan mengembalikan unit ke keadaan sebelumnya, yang memungkinkannya dimulai atau diaktifkan.

      Mengedit Berkas Unit

      Walaupun format spesifik untuk berkas unit berada di luar lingkup tutorial ini, systemctl memberikan mekanisme bawaan untuk mengedit dan memodifikasi berkas unit jika Anda perlu membuat penyesuaian. Fungsionalitas ini ditambahkan dalam systemd versi 218.

      Perintah edit secara asali akan membuka cuplikan berkas unit untuk unit tersebut:

      • sudo systemctl edit nginx.service

      Ini akan berupa berkas kosong yang dapat digunakan untuk mengesampingkan atau menambahkan arahan ke definisi unit. Direktori akan dibuat dalam direktori /etc/systemd/system yang berisi nama unit dengan tambahan .d. Misalnya, untuk nginx.service, suatu direktori bernama nginx.service.d akan dibuat.

      Di dalam direktori ini, cuplikan akan dibuat dengan nama override.conf. Bila unit dimuat, systemd dalam memori akan menggabungkan cuplikan yang dikesampingkan dengan berkas unit penuh. Arahan cuplikan akan menjadi prioritas daripada yang ada dalam berkas unit asli.

      Jika Anda ingin mengedit berkas unit penuh alih-alih membuat cuplikan, Anda dapat memberikan bendera --full:

      • sudo systemctl edit --full nginx.service

      Perintah ini akan memuat berkas unit saat ini ke dalam editor, yang dapat dimodifikasi. Ketika keluar dari editor, berkas yang diubah ditulis ke /etc/systemd/system, yang akan menjad prioritas dari definisi unit sistem (biasanya ditemukan di /lib/systemd/system).

      Untuk menghapus tambahan yang telah Anda buat, hapus direktori konfigurasi .d unit atau berkas layanan yang dimodifikasi dari /etc/systemd/system. Misalnya, untuk menghapus cuplikan, kita dapat mengetikkan:

      • sudo rm -r /etc/systemd/system/nginx.service.d

      Untuk menghapus berkas unit yang dimodifikasi sepenuhnya, kita ketikkan:

      • sudo rm /etc/systemd/system/nginx.service

      Setelah menghapus berkas atau direktori, Anda harus memuat ulang proses systemd agar tidak lagi berupaya merujuk berkas-berkas ini dan kembali menggunakan salinan sistem. Anda dapat melakukannya dengan mengetikkan:

      • sudo systemctl daemon-reload

      Menyesuaikan Keadaan Sistem (Runlevel) dengan Target

      Target adalah berkas unit khusus yang menggambarkan keadaan sistem atau titik sinkronisasi. Seperti unit lainnya, berkas yang mendefinisikan target dapat diidentifikasi melalui akhirannya, yang dalam hal ini adalah .target. Target tidak mencocokkan dirinya sendiri, melainkan digunakan untuk mengelompokkan unit lain menjadi satu.

      Perintah ini dapat digunakan untuk membawa sistem ke keadaan tertentu, seperti sistem init lainnya yang menggunakan runlevel. Semua itu digunakan sebagai referensi ketika fungsi tertentu tersedia, yang memungkinkan Anda menentukan keadaan yang diinginkan sebagai ganti unit individual yang diperlukan untuk menghasilkan keadaan itu.

      Misalnya, ada swap.target yang digunakan untuk menunjukkan bahwa swap siap digunakan. Unit yang menjadi bagian dari proses ini dapat menyinkronkan dengan target ini dengan menunjukkannya dalam konfigurasi bahwa unit tersebut WantedBy= atau RequiredBy= oleh swap.target. Unit yang mengharuskan swap tersedia dapat menentukan syarat ini menggunakan spesifikasi Wants=, Requires=, dan After= untuk menandakan sifat hubungannya.

      Mendapatkan dan Mengatur Target Asali

      Proses systemd memiliki target asali yang digunakannya saat melakukan boot sistem. Memenuhi kaskade dependensi dari target tunggal itu akan membawa sistem ke keadaan yang diinginkan. Untuk menemukan target asali bagi sistem Anda, ketikkan:

      Output

      multi-user.target

      Jika ingin menetapkan target asali yang berbeda, Anda dapat menggunakan set-default. Misalnya, jika Anda telah menginstal desktop grafis dan ingin agar sistem melakukan boot ke desktop grafis secara asali, Anda dapat mengubah target asalinya:

      • sudo systemctl set-default graphical.target

      Menampilkan Daftar Target yang Tersedia

      Anda bisa mendapatkan daftar target yang tersedia di sistem dengan mengetikkan:

      • systemctl list-unit-files --type=target

      Tidak seperti runlevel, beberapa target dapat aktif sekaligus. Target aktif menandakan bahwa systemd berupaya memulai semua unit yang terikat ke target dan tidak mencoba untuk memutusnya lagi. Untuk melihat semua target aktif, ketikkan:

      • systemctl list-units --type=target

      Mengisolasi Target

      Bisa saja memulai semua unit yang telah dikaitkan dengan target dan menghentikan semua unit yang bukan bagian dari pohon dependensi. Perintah yang kita perlukan untuk melakukannya disebut isolate. Ini mirip dengan mengubah runlevel di sistem init lainnya.

      Misalnya, jika Anda beroperasi di lingkungan grafis dengan graphical.target aktif, Anda dapat mematikan sistem grafis dan memasukkan sistem ke bentuk baris perintah multipengguna dengan mengisolasi multi-user.target. Karena graphical.target bergantung pada multi-user.target, tetapi tidak ada cara lainnya lagi, semua unit grafis akan dihentikan.

      Anda mungkin perlu melihat dependensi target yang diisolasi sebelum melakukan prosedur ini untuk memastikan bahwa Anda tidak menghentikan layanan penting:

      • systemctl list-dependencies multi-user.target

      Bila Anda puas dengan unit yang akan dibiarkan tetap aktif, Anda dapat mengisolasi target dengan mengetikkan:

      • sudo systemctl isolate multi-user.target

      Menggunakan Pintasan untuk Kejadian Penting

      Ada beberapa target yang didefinisikan untuk kejadian penting seperti mematikan daya atau melakukan boot ulang. Namun, systemctl juga memiliki beberapa pintasan yang memberikan beberapa fungsi tambahan.

      Misalnya, untuk menempatkan sistem ke dalam mode pertolongan (pengguna tunggal), Anda dapat menggunakan perintah rescue sebagai ganti isolate rescue.target:

      Perintah ini akan memberikan fungsi tambahan yang memperingatkan semua pengguna yang log masuk tentang kejadian tersebut.

      Untuk menghentikan sistem, Anda dapat menggunakan perintah halt:

      Untuk mulai mematikan daya sepenuhnya, Anda dapat menggunakan perintah poweroff:

      Menyalakan ulang dapat dimulai dengan perintah reboot:

      Ini semua akan memperingatkan para pengguna yang log masuk mengenai kejadian tersebut, satu-satunya hal yang tidak akan dilakukan oleh menjalankan atau mengisolasi target. Harap diperhatikan bahwa kebanyakan mesin akan menautkan perintah yang lebih pendek dan lebih konvensional untuk operasi ini agar berfungsi secara benar dengan systemd.

      Misalnya, untuk melakukan boot ulang sistem, Anda biasanya dapat mengetikkan:

      Kesimpulan

      Saat ini, Anda sudah memahami beberapa kemampuan dasar dari perintah systemctl yang memungkinkan Anda berinteraksi dengan dan mengendalikan instans systemd. Utilitas systemctl adalah titik utama interaksi Anda untuk manajemen layanan dan keadaan sistem.

      Walaupun systemctl terutama beroperasi dengan proses inti systemd, ada beberapa komponen lain di ekosistem systemd yang dikendalikan oleh utilitas lain. Kemampuan lainnya, seperti manajemen log dan sesi pengguna yang ditangani oleh daemon terpisah dan utilitas manajemen (masing-masing yaitu journald/journalctl dan logind/loginctl). Menyisihkan waktu untuk memahami berbagai alat dan daemon lain akan membuat manajemen menjadi tugas yang lebih mudah.



      Source link