No se puede acceder al archivo PID después de la actualización de nginx

No se puede acceder al archivo PID después de la actualización de nginx

Después de eliminar la versión 0.7.x que venía con los paquetes estándar de Debian, instalé la versión 1.4.1 de nginx por fuente.

Es posible iniciar nginx service nginx starty veo que nginx está reservando el puerto 80 cuando hago netstat.

netstat -apn | grep nginxproducción:

tcp      0    0 0.0.0.0:80            0.0.0.0:*             LISTEN    3115/nginx 

El problema es que cuando lo hago service nginx statuso service nginx stoprecibo este mensaje:

No se pudo acceder al archivo PID para nginx... ¡falló!

¿A quién puedo arreglar esto? ¿Y cómo evito tener este problema?

EDITAR: solución

  1. remove nginx
  2. luego ve a la fuente y./configure --pid-path=/var/run/nginx.pid
  3. make
  4. checkinstall make install

Respuesta1

Debian probablemente configuró/parcheó nginx para que su paquete coloque el archivo pid en un lugar específico que no está disponible de forma predeterminada. Cuando lo reemplazó mediante algo compilado desde el código fuente, no coincide con las expectativas de la infraestructura del servicio.

Miraría qué parches y opciones de configuración hicieron la gente de Debian y volvería a compilar su versión 1.4.x con las opciones para colocar el archivo pid en el mismo lugar.

¿En cuanto a cómo prevenir este tipo de problema? Haga las cosas a través de paquetes o compile desde la fuente, pero no ambas cosas. O tenga en cuenta que deberá tener especial cuidado al hacerlo, ya que las cosas se romperán.

información relacionada