From bc443e594fe0faf597d690c9f8c03aefaae35a84 Mon Sep 17 00:00:00 2001 From: pavel Date: Sat, 9 Apr 2016 04:55:37 -0400 Subject: [PATCH 1/1] PID file fixes (systemd, openrc) --- src/daemon.c | 1 + system/netdata-openrc.in | 5 +++++ system/netdata.service.in | 1 - 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/daemon.c b/src/daemon.c index 2dd7b09c..d091f773 100644 --- a/src/daemon.c +++ b/src/daemon.c @@ -306,6 +306,7 @@ int become_daemon(int dont_fork, int close_all_files, const char *user, const ch // don't close it, we might need it at exit // close(pidfd); } + else error("Failed to open pidfile '%s'.", pidfile); } if(user && *user) { diff --git a/system/netdata-openrc.in b/system/netdata-openrc.in index 06bb7ffb..3b747fcb 100755 --- a/system/netdata-openrc.in +++ b/system/netdata-openrc.in @@ -36,6 +36,11 @@ depend() { checkpath -o ${NETDATA_OWNER} -d @localstatedir_POST@/cache/netdata /run/netdata } +start_pre() { + piddir=$(dirname ${pidfile}) + mkdir -p ${piddir} +} + start_post() { if [[ ! -f @sysconfdir_POST@/netdata/netdata.conf ]]; then ebegin "Downloading default configuration to @sysconfdir_POST@/netdata/netdata.conf" diff --git a/system/netdata.service.in b/system/netdata.service.in index 6adea5d3..fc5866c5 100644 --- a/system/netdata.service.in +++ b/system/netdata.service.in @@ -9,7 +9,6 @@ User=root Group=root PIDFile=@localstatedir_POST@/run/netdata/netdata.pid ExecStartPre=/usr/bin/mkdir -p @localstatedir_POST@/run/netdata -ExecStartPre=/usr/bin/chown -R netdata:netdata @localstatedir_POST@/run/netdata ExecStart=@sbindir_POST@/netdata -pidfile @localstatedir_POST@/run/netdata/netdata.pid ExecStop=/bin/kill -SIGTERM $MAINPID TimeoutStopSec=30 -- 2.39.2