Apa arti / tujuan file * .pid di / var / run

10

Saya cukup baru di dunia Linux, dan sekarang saya mencoba memahami prinsip-prinsip FHS .

Di /var/runsaya menemukan sekitar sepuluh *.pidfile seperti crond.pidyang hanya berisi PID.

Ada lebih dari sepuluh proses yang berjalan di sistem dan hanya sepuluh file.

Jadi apa tujuan mereka dan apa yang menghasilkan mereka?

Alex Silkovsky
sumber
3
Lihat juga: Apa itu file .pid dan apa isinya? dan Untuk apa file pid dan kunci? . Orang harus menambahkan bahwa ini adalah cara sederhana untuk menemukan proses daemon dengan nama, tetapi bukan yang sangat kuat / terprogram dengan baik. Shutdowns yang tidak disengaja dapat menyebabkan pidfiles yatim piatu, di mana daemon restart gagal karena "daemon masih berjalan". Sumber daya pembersih otomatis (mis. Soket server pada port yang dikenal) akan tampak lebih baik saat ini.
David Tonhofer

Jawaban:

13

Tujuan dari file-file ini adalah untuk menyediakan sarana yang mudah bagi proses lain untuk berkomunikasi dengannya (mis. Mengirim sinyal). Ini hanya masuk akal untuk layanan yang berjalan lama, itu sebabnya Anda menemukan file seperti itu jauh lebih sedikit daripada proses yang berjalan.

Biasanya file-file itu dibuat oleh layanan yang mereka wakili, Anda akan menemukan parameter seperti --pid-fileatau lebih dalam doa.

Tergantung pada jenis sistem init Anda akan menemukan file untuk layanan di tempat yang berbeda.

  • sysv-init: /etc/init.d/
  • pemula: /etc/init/
  • systemd: /etc/systemd/
Guntbert
sumber