diff options
Diffstat (limited to 'net-mgmt/netdisco/files/netdisco.in')
-rw-r--r-- | net-mgmt/netdisco/files/netdisco.in | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/net-mgmt/netdisco/files/netdisco.in b/net-mgmt/netdisco/files/netdisco.in index 44d193e86178..84da57b2b6dd 100644 --- a/net-mgmt/netdisco/files/netdisco.in +++ b/net-mgmt/netdisco/files/netdisco.in @@ -18,36 +18,34 @@ load_rc_config $name : ${netdisco_group="%%NETDISCO_GROUP%%"} start_precmd=${name}_prestart -start_cmd=${name}_start stop_cmd=${name}_stop restart_cmd=${name}_restart status_cmd=${name}_status command="%%PREFIX%%/bin/netdisco" command_interpreter="/usr/bin/perl" -pidfile=%%NETDISCO_RUNDIR%%/netdisco_daemon.pid +netdisco_config="%%ETCDIR%%/netdisco.conf" +pidfile=$(grep ^daemon_pid $netdisco_config | sed -E 's/.*=\s+//') +flags="-p start" -required_files="%%ETCDIR%%/netdisco.conf" +required_files="$netdisco_config" netdisco_prestart() { - test -d %%NETDISCO_RUNDIR%% || install -d -m 0700 -o $netdisco_user -g $netdisco_group %%NETDISCO_RUNDIR%% + test -d ${pidfile%/*} || install -d -m 0700 -o $netdisco_user -g $netdisco_group ${pidfile%/*} + touch $pidfile && chown $netdisco_user $pidfile test -d %%NETDISCO_DBDIR%% || install -d -m 0700 -o $netdisco_user -g $netdisco_group %%NETDISCO_DBDIR%% } -netdisco_start() { - $command -p start -} - netdisco_stop() { - $command -p stop + su -m "$netdisco_user" -c "$command -p stop" } netdisco_restart() { - $command -p restart + su -m "$netdisco_user" -c "$command -p restart" } netdisco_status() { - $command -p status + su -m "$netdisco_user" -c "$command -p status" } run_rc_command "$1" |