¿Cuál es el significado / propósito de los archivos * .pid en / var / run

10

Soy bastante nuevo en el mundo de Linux, y ahora estoy tratando de entender los principios de FHS .

En /var/runencontré unos diez *.pidarchivos como crond.pidlos que contienen sólo los PID.

Hay más de diez procesos ejecutándose en el sistema y solo diez archivos.

Entonces, ¿cuál es su propósito y qué los generó?

Alex Silkovsky
fuente
3
Ver también: ¿Qué es un archivo .pid y qué contiene? y ¿Para qué sirven los archivos pid y lock? . Cabe agregar que esta es una manera simple de encontrar un proceso de demonio por nombre, pero no uno particularmente robusto / bien programado. Los cierres accidentales pueden dejar archivos de solicitud huérfanos, sobre los cuales falla un reinicio del demonio porque "el demonio aún se está ejecutando". El recurso de limpieza automática (por ejemplo, un socket de servidor en un puerto conocido) parecería mejor hoy en día.
David Tonhofer

Respuestas:

13

El propósito de estos archivos es proporcionar un medio fácil para que otros procesos se comuniquen con ellos (por ejemplo, enviar señales). Esto solo tiene sentido para los servicios de larga ejecución, es por eso que encuentra mucho menos archivos que procesos en ejecución.

Por lo general, esos archivos son creados por el servicio que representan, encontrará un parámetro similar --pid-fileen la invocación.

Dependiendo del tipo de sistema init , encontrará archivos para servicios en diferentes lugares.

  • sysv-init: /etc/init.d/
  • advenedizo: /etc/init/
  • systemd: /etc/systemd/
Guntbert
fuente