Opened 4 years ago

Closed 4 years ago

#1954 closed defect (invalid)

service file for CentOS 8 uses wrong variable for ExecReload

Reported by: georg-h@… Owned by:
Priority: minor Milestone:
Component: nginx-package Version: 1.14.x
Keywords: CentOS8 nginx.service Cc: georg-h@…
uname -a: Linux myhost 4.18.0-147.8.1.el8_1.x86_64 #1 SMP Thu Apr 9 13:49:54 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
nginx -V: nginx version: nginx/1.14.1
built by gcc 8.2.1 20180905 (Red Hat 8.2.1-3) (GCC)
built with OpenSSL 1.1.1 FIPS 11 Sep 2018 (running with OpenSSL 1.1.1c FIPS 28 May 2019)
TLS SNI support enabled
configure arguments: --prefix=/usr/share/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/lib/nginx/tmp/client_body --http-proxy-temp-path=/var/lib/nginx/tmp/proxy --http-fastcgi-temp-path=/var/lib/nginx/tmp/fastcgi --http-uwsgi-temp-path=/var/lib/nginx/tmp/uwsgi --http-scgi-temp-path=/var/lib/nginx/tmp/scgi --pid-path=/run/ --lock-path=/run/lock/subsys/nginx --user=nginx --group=nginx --with-file-aio --with-ipv6 --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module=dynamic --with-http_image_filter_module=dynamic --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_slice_module --with-http_stub_status_module --with-http_perl_module=dynamic --with-http_auth_request_module --with-mail=dynamic --with-mail_ssl_module --with-pcre --with-pcre-jit --with-stream=dynamic --with-stream_ssl_module --with-debug --with-cc-opt='-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,-E'


while checking fresh installed nginx service file on a new CentOS 8 server I've got this error:

systemd[1]: nginx.service: Failed to parse PID from file /run/ Invalid argument

so I've checked the run folder and as this looked OK for me I've checked the provided service file too:

cat /usr/lib/systemd/system/nginx.service
Description=The nginx HTTP and reverse proxy server

# Nginx will fail to start if /run/ already exists but has the wrong
# SELinux context. This might happen when running nginx -t from the cmdline.
ExecStartPre=/usr/bin/rm -f /run/
ExecStartPre=/usr/sbin/nginx -t
#ExecReload=/bin/kill -s HUP $MAINPID


-- the defined variable for the PID is called PIDFile but "ExecReload" points to $MAINPID which isn't defined.


ExecReload=/bin/kill -s HUP $MAINPID


ExecReload=/bin/kill -s HUP $PIDFile

resolves the error

kind regards


Change History (1)

comment:1 by thresh, 4 years ago

Resolution: invalid
Status: newclosed

Hi George,

Thank you for your report!

$PIDFile will hold the file name that has the PID, so sending a signal via ExecReload to that file wouldnt make any sense.

Additionally, that is the package provided by Red Hat, not us, so we cant really fix anything about it, too.

Note: See TracTickets for help on using tickets.