nginx.service: Failed to parse PID from file /var/run/nginx.pid: Invalid argument hatasının çözümü

Merhabalar,

Bu kısa yazımda, linux sunuculardaki nginx servis problemiyle ilgili bir çözümü paylaşmak istiyorum. Linux sunucularınız üzerinde nginx kuruluysa ve servis yükleme veya restart işleminden sonra aşağıdaki gibi bir hata görüyorsanız, bu makale tam size göre 🙂

Problemin sebebi, systemd ile nginx servisleri arasındaki yükleme ve okuma süresi kaynaklı da diyebiliriz kısaca. Bu hata, nginx servis başlangıcının biraz daha zaman almasından kaynaklanır. systemd, nginx önyüklemeyi bitirmeden önce pid dosyasını okur ve okuma işlemi, PID’nin henüz oluşturulamamış olması nedeniyle başarısız olmasına sebep olur.

Esasen servisin çalışması için bir engel değil. Fakat loglarda failed ibareleri görmek istemeyen benim gibi kullanıcılar için yol gösterici olacağına inanıyorum.

Çözüm için 2 yöntem var:

İlki aşağıdaki lokasyonda, override.conf dosyasını bir metin editörü ile oluşturup, içeriğini aşağıdaki gibi doldurmak.

nano /etc/systemd/system/nginx.service.d/override.conf

[Service]
ExecStartPost=/bin/sleep 0.1

Diğer bir yol ise, aşağıdaki komutu kullanarak direkt olarak dosyayı oluşturmak ve içeriğine ilgili değerleri eklemek.

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

Sonrasında önce daemon-reload işlemi sonra da nginx servis restart işlemini yapabiliriz.

systemctl daemon-reload
systemctl restart nginx.service

Bu işlemden sonra, artık öyle bir hata görmeyeceksiniz.

Yararlı olması dileğiyle.

Yusuf İşleyen