Quelle est la signification / le but des fichiers * .pid dans / var / run

10

Je suis assez nouveau dans le monde Linux, et maintenant j'essaie de comprendre les principes FHS .

En /var/runj'ai trouvé une dizaine de *.pidfichiers comme ceux crond.pidqui ne contiennent que des PID.

Il y a plus de dix processus en cours d'exécution dans le système et seulement dix fichiers.

Quel est donc leur objectif et qu'est-ce qui les a générés?

Alex Silkovsky
la source
3
Voir aussi: Qu'est-ce qu'un fichier .pid et que contient-il? et à quoi servent les fichiers pid et lock? . Il faut ajouter que c'est un moyen simple de trouver un processus démon par son nom, mais pas particulièrement robuste / bien programmé. Les arrêts accidentels peuvent laisser des fichiers pid orphelins, sur lesquels un redémarrage du démon échoue car "le démon est toujours en cours d'exécution". La ressource de nettoyage automatique (par exemple, un socket de serveur sur un port connu) semble mieux de nos jours.
David Tonhofer

Réponses:

13

Le but de ces fichiers est de fournir un moyen facile pour d'autres processus de communiquer avec eux (par exemple, envoyer des signaux). Cela n'a de sens que pour les services de longue durée, c'est pourquoi vous trouvez beaucoup moins de tels fichiers que les processus en cours d'exécution.

Habituellement, ces fichiers sont créés par le service qu'ils représentent, vous trouverez un paramètre similaire --pid-fileà l'invocation.

Selon le type de système init, vous trouverez des fichiers pour les services à différents endroits.

  • sysv-init: /etc/init.d/
  • parvenu: /etc/init/
  • systemd: /etc/systemd/
guntbert
la source