반응형
🔹 로그 내용
Nginx 상태 확인 시 다음과 같은 PID 관련 로그 발생
systemctl status nginx
nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument
또는
nginx.service: Can't open PID file /var/run/nginx.pid (yet?) after start: No such file or directory
🔹 문제 원인
Nginx가 시작될 때, PID를 /run/nginx.pid 파일에 기록하는데, 이 파일이 생성되기 전에 systemd가 이를 읽으려고 시도하면 위와 같은 오류가 발생할 수 있다.
🔹 문제 해결
Nginx가 시작된 후 0.1초 동안 대기하여 PID 파일이 생성될 수 있는 시간을 제공하여 조치한다.
vi /usr/lib/systemd/system/nginx.service
# PIDFile 다음 줄에 ExecStartPost=/bin/sleep 0.1 추가
========================================
...
PIDFile=/var/run/nginx.pid
ExecStartPost=/bin/sleep 0.1
...
========================================
systemctl daemon-reload
systemctl restart nginx
systemctl status nginx
반응형