Temukan lokasi layanan systemd


62

Ada banyak tempat berbeda di mana file unit systemd dapat ditempatkan. Apakah ada cara cepat dan mudah untuk bertanya kepada systemd dari mana ia membaca deklarasi layanan, hanya dengan memberikan nama layanan?

Jawaban:


75

Untuk unit yang didefinisikan dalam file statis aktual, ini dapat dilihat di systemctl status:

$ systemctl status halt-local.service
● halt-local.service - /usr/sbin/halt.local Compatibility
   Loaded: loaded (/lib/systemd/system/halt-local.service; static)
   Active: inactive (dead)

Tetapi ada unit yang tidak ditentukan oleh file, misalnya dengan systemd-crondiinstal. Ini tidak memiliki lokasi yang berguna terdaftar dengan status:

$ systemctl status cron-jojo-0.timer
● cron-jojo-0.timer - [Cron] "*/10 * * * * ..."
   Loaded: loaded (/var/spool/cron/crontabs/jojo)
   Active: active (waiting) since Mon 2015-05-18 14:53:01 UTC; 9min ago

Namun dalam kedua kasus tersebut, FragmentPathbidang ini mendidik:

$ systemctl show -p FragmentPath cron-daily.service
FragmentPath=/lib/systemd/system/cron-daily.service
$ systemctl show -p FragmentPath cron-jojo-0.service
FragmentPath=/run/systemd/generator/cron-jojo-0.service
$ systemctl show -p FragmentPath halt-local.service
FragmentPath=/lib/systemd/system/halt-local.service
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.