--without-freeipmi \
--$(if $(CONFIG_NUT_SSL),with,without)-ssl $(if $(CONFIG_NUT_SSL),--with-openssl) \
--without-libltdl \
- --with-statepath=/var/run \
+ --with-statepath=/var/run/nut \
--with-drvpath=/lib/nut \
--with-user=root \
--with-group=root
}
start_service() {
- [ -d $RUN_D ] || mkdir -p $RUN_D
- mkdir -p /var/etc/nut
- chmod 640 /var/etc/nut
rm -f $UPSMON_C
config_load nut_monitor
chmod 640 $UPSMON_C
chmod 640 /var/etc/nut/nut.conf
+ [ -d /var/run/nut ] || {
+ mkdir -m 0750 -p /var/run/nut
+ chown ${runas:-root}:$(id -gn ${runas:-root}) /var/run/nut
+ }
+
chown ${runas:-root}:$(id -gn ${runas:-root}) $UPSMON_C
$DEBUG /usr/sbin/upsmon $UPSMON_OPTIONS
}
echo "LISTEN $address $port" >>$UPSD_C
}
+upsd_statepath() {
+ local cfg="$1"
+ config_get statepath "$cfg" statepath
+}
+
upsd_config() {
local cfg="$1"
local maxage maxconn certfile
chmod 0640 $UPS_C
chmod 0640 $UPSD_C
chmod 0640 /var/etc/nut/nut.conf
+ [ -d "${statepath:-/var/run/nut}" ] || {
+ mkdir -m 0750 -p "${statepath:-/var/run/nut}"
+ chown $runas:$(id -gn $runas) "${statepath:-/var/run/nut}"
+ }
if [ -n "$runas" ]; then
chown -R $runas:$(id -gn $runas) /var/etc/nut
config_get driver "$cfg" driver
- [ -r /var/run/$driver-$cfg ] && /usr/sbin/upsdrvctl stop $cfg
+ [ -r ${statepath:-/var/run/nut}/$driver-$cfg ] && /usr/sbin/upsdrvctl stop $cfg
}
stop_service() {
[ -r $PID_F ] && /usr/sbin/upsd -c stop
config_load ups
+ config_foreach upsd_statepath upsd
config_foreach nut_driver_stop driver
}