nginx.service: Error al leer el PID del archivo /run/nginx.pid: argumento inválido !

web servers 23 de mar. de 2018

hola a todos hoy hablo sobre un error que me paso en un de los servidores ubuntu server 16 que estaba administrando e instalando actualizaciones.

bueno empezando lo que estaba haciendo era lo siguiente:

$ sudo apt update
$ sudo apt upgrade
$ sudo apt autoremove

apt autoremove
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias       
Leyendo la información de estado... Hecho
Los siguientes paquetes se ELIMINARÁN:
  linux-headers-4.4.0-109 linux-headers-4.4.0-109-generic linux-headers-4.4.0-112 linux-headers-4.4.0-112-generic
  linux-headers-4.4.0-113 linux-headers-4.4.0-113-generic linux-image-4.4.0-109-generic linux-image-4.4.0-112-generic
  linux-image-4.4.0-113-generic linux-image-extra-4.4.0-109-generic linux-image-extra-4.4.0-112-generic
  linux-image-extra-4.4.0-113-generic
0 actualizados, 0 nuevos se instalarán, 12 para eliminar y 0 no actualizados.
Se liberarán 897 MB después de esta operación.
¿Desea continuar? [S/n] 
(Leyendo la base de datos ... 200226 ficheros o directorios instalados actualmente.)
Desinstalando linux-headers-4.4.0-109-generic (4.4.0-109.132) ...
Desinstalando linux-headers-4.4.0-109 (4.4.0-109.132) ...
Desinstalando linux-headers-4.4.0-112-generic (4.4.0-112.135) ...
Desinstalando linux-headers-4.4.0-112 (4.4.0-112.135) ...
Desinstalando linux-headers-4.4.0-113-generic (4.4.0-113.136) ...
Desinstalando linux-headers-4.4.0-113 (4.4.0-113.136) ...
Desinstalando linux-image-extra-4.4.0-109-generic (4.4.0-109.132) ...
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.4.0-109-generic /boot/vmlinuz-4.4.0-109-generic
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.4.0-109-generic /boot/vmlinuz-4.4.0-109-generic
update-initramfs: Generating /boot/initrd.img-4.4.0-109-generic
W: mdadm: /etc/mdadm/mdadm.conf defines no arrays.
run-parts: executing /etc/kernel/postinst.d/unattended-upgrades 4.4.0-109-generic /boot/vmlinuz-4.4.0-109-generic
run-parts: executing /etc/kernel/postinst.d/update-notifier 4.4.0-109-generic /boot/vmlinuz-4.4.0-109-generic
run-parts: executing /etc/kernel/postinst.d/x-grub-legacy-ec2 4.4.0-109-generic /boot/vmlinuz-4.4.0-109-generic
Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-4.4.0-117-generic
Found kernel: /boot/vmlinuz-4.4.0-116-generic
Found kernel: /boot/vmlinuz-4.4.0-113-generic
Found kernel: /boot/vmlinuz-4.4.0-112-generic
Found kernel: /boot/vmlinuz-4.4.0-109-generic
Found kernel: /boot/vmlinuz-4.4.0-117-generic
Found kernel: /boot/vmlinuz-4.4.0-116-generic
Found kernel: /boot/vmlinuz-4.4.0-113-generic
Found kernel: /boot/vmlinuz-4.4.0-112-generic
Found kernel: /boot/vmlinuz-4.4.0-109-generic
Updating /boot/grub/menu.lst ... done

ojo el ultimo comando era para remover versiones de imagenes del kernel antiguas asi como se vio en la imagen de recuadro negro que acaban de ver.

bueno lo siguiente que hice es instalar en nginx y bueno hice lo siguiente:

$ sudo apt install nginx

bueno una vez hecho esto paso, al momento de que toda la instalacion termine verifique que el servicio de nginx este funcionando pero me salio un mensaje de error al ver el status de nginx asi como lo veran ahora.

 /etc/init.d/nginx status
● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) since vie 2018-03-23 19:52:47 -04; 36min ago
 Main PID: 1439 (nginx)
   CGroup: /system.slice/nginx.service
           ├─1439 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
           └─1440 nginx: worker process

mar 23 19:52:45 smith systemd[1]: Starting A high performance web server and a reverse proxy server...
mar 23 19:52:47 smith systemd[1]: nginx.service: Failed to read PID from file /run/nginx.pid: Invalid argument
mar 23 19:52:47 smith systemd[1]: Started A high performance web server and a reverse proxy server.

bueno ahora si no lo vieron el mensaje, se los muestro ahora:

mar 23 19:52:47 smith systemd[1]: nginx.service: Failed to read PID from file /run/nginx.pid: Invalid argument

bueno para solucionar este problema haremos lo siguiente.

Crea un directorio llamado nginx.service.d en /etc/systemd/system/:

$ sudo mkdir /etc/systemd/system/nginx.service.d

Imprimir datos en archivo

Ejecutar:

$ sudo printf "[Service]\nExecStartPost=/bin/sleep 0.1\n" > 
/etc/systemd/system/nginx.service.d/override.conf

Asegúrese de ingresar la cadena después de> en su propia línea para que printf escriba su salida en el archivo de configuración /etc/systemd/system/nginx.service.d/override.conf.

Recargar el daemon

Recargar la configuración del administrador systemd:

$ sudo systemctl daemon-reload

Esto volverá a ejecutar todos los generadores, volverá a cargar todos los archivos de la unidad y recreará todo el árbol de dependencias systemd.

bueno por ultimo reiniciaremos el servicio

$ sudo systemctl restart nginx

y luego de estos vemos el status del servicio nginx para ver el resultado si esta funcionando correctamente el siguiente comando es :
systemctl status nginx o tambien podemos este otro comando /etc/init.d/nginx status asi como se ve en la imagen.

 /etc/init.d/nginx status
● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
  Drop-In: /etc/systemd/system/nginx.service.d
           └─override.conf
   Active: active (running) since vie 2018-03-23 20:39:43 -04; 19s ago
  Process: 15891 ExecStop=/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/nginx.pid (code=exited, status=0/SUCCESS)
  Process: 15906 ExecStartPost=/bin/sleep 0.1 (code=exited, status=0/SUCCESS)
  Process: 15902 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
  Process: 15897 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
 Main PID: 15905 (nginx)
    Tasks: 2
   Memory: 1.7M
      CPU: 25ms
   CGroup: /system.slice/nginx.service
           ├─15905 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
           └─15908 nginx: worker process

mar 23 20:39:43 smith systemd[1]: Starting A high performance web server and a reverse proxy server...
mar 23 20:39:43 smith systemd[1]: Started A high performance web server and a reverse proxy server.

bueno otra solución es eliminar la opción PIDFile y agregar la línea:

$ sudo ExecStopPost=/bin/rm -f /run/nginx.pid

bueno eso es todo por este post hasta otro post !!

Etiquetas

¿Te gustó el contenido o lo que hacemos? ¡Cualquier colaboración es agradecida para mantener los servidores o crear proyectos!

Owen-Wilson

Siempre Aprendiendo de uno mismo y de los demás !!

Comentarios:

¡Genial! Te has suscrito con éxito.
¡Genial! Ahora, completa el checkout para tener acceso completo.
¡Bienvenido de nuevo! Has iniciado sesión con éxito.
Éxito! Su cuenta está totalmente activada, ahora tienes acceso a todo el contenido.