diff options
Diffstat (limited to 'community/nut/upsd.initd')
-rw-r--r-- | community/nut/upsd.initd | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/community/nut/upsd.initd b/community/nut/upsd.initd new file mode 100644 index 00000000000..e9b7a22fce7 --- /dev/null +++ b/community/nut/upsd.initd @@ -0,0 +1,41 @@ +#!/sbin/openrc-run + +name="UPS Server" +pidfile=/run/nut/upsd.pid +command=/usr/sbin/upsd +required_files="/etc/nut/nut.conf /etc/nut/upsd.conf" +extra_started_commands="reload" +start_stop_daemon_args="--quiet" + +depend() { + use net dns + need udev +} + +start_pre() { + . /etc/nut/nut.conf + case $MODE in + standalone|netserver) + checkpath -d --owner nut:nut --mode 750 ${pidfile%/*} || return 1 + /usr/sbin/upsdrvctl start > /dev/null + ;; + none) + eerror "$name disabled, please adjust the configuration to your needs" + eerror "Then set MODE to a suitable value in /etc/nut/nut.conf to enable it" + return 1 + ;; + *) + return 1 + ;; + esac +} + +stop_post() { + /usr/sbin/upsdrvctl stop > /dev/null +} + +reload() { + ebegin "Reloading $name" + start-stop-daemon --signal HUP --pidfile $pidfile + eend $? +} |