new upstream 2.8.0
This commit is contained in:
parent
fc7f4b43c1
commit
b2b0c9995a
836 changed files with 137090 additions and 30018 deletions
67
scripts/systemd/nut-driver@.service.in
Normal file
67
scripts/systemd/nut-driver@.service.in
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
[Unit]
|
||||
Description=Network UPS Tools - device driver for %I
|
||||
After=local-fs.target
|
||||
|
||||
# Note: If the "Before" line below is uncommented, the target unit
|
||||
# would only become initialized after the driver units are all in
|
||||
# a final state (active, failed, ...) and would allow nut-server
|
||||
# (upsd) to start up and represent those devices on the network.
|
||||
# With this constraint commented away, the nut-server should start
|
||||
# earlier, but may initially report some devices as Not connected
|
||||
# (they should appear when drivers complete their initialization -
|
||||
# e.g. snmp walks of large MIBs can take a while):
|
||||
#Before=nut-driver.target
|
||||
|
||||
# Propagate stopping of the target:
|
||||
PartOf=nut-driver.target
|
||||
|
||||
# Note: The choice of "network.target" allows to schedule this unit
|
||||
# roughly when the network stack of this OS is ready (e.g. that the
|
||||
# subsequent `upsd` will have a `0.0.0.0` or a `localhost` to bind
|
||||
# to); however this target does not ensure availability of a real
|
||||
# connection or final IP addresses. Drivers that require network as
|
||||
# a media for interaction with UPSes (snmp-ups, netxml-ups, ipmi etc.)
|
||||
# may want to extend this unit with `Requires=network-online.target`
|
||||
# instead. Also note that *generally* this should not be a problem,
|
||||
# since the drivers have a few retries with timeouts during startup,
|
||||
# and typically by the time the box gets an IP address, the driver
|
||||
# is still retrying to start and will succeed.
|
||||
# Extending the unit does not require *this* file to be edited, you
|
||||
# can instead drop in an additional piece of configuration, e.g. add
|
||||
# a `/etc/systemd/system/nut-driver@.service.d/network.conf` with:
|
||||
# [Unit]
|
||||
# Requires=network-online.target
|
||||
# After=network-online.target
|
||||
# If your `upsd` requires specific IP addresses to be available before
|
||||
# starting, a `/etc/systemd/system/nut-driver.target.d/network.conf`
|
||||
# can be used in a similar manner.
|
||||
# Finally note that "nut-driver-enumerator.service" should take care of this.
|
||||
|
||||
[Service]
|
||||
EnvironmentFile=-@CONFPATH@/nut.conf
|
||||
SyslogIdentifier=%N
|
||||
ExecStart=/bin/sh -c 'NUTDEV="`@NUT_LIBEXECDIR@/nut-driver-enumerator.sh --get-device-for-service %i`" && [ -n "$NUTDEV" ] || { echo "FATAL: Could not find a NUT device section for service unit %i" >&2 ; exit 1 ; } ; @SBINDIR@/upsdrvctl start "$NUTDEV"'
|
||||
ExecStop=/bin/sh -c 'NUTDEV="`@NUT_LIBEXECDIR@/nut-driver-enumerator.sh --get-device-for-service %i`" && [ -n "$NUTDEV" ] || { echo "FATAL: Could not find a NUT device section for service unit %i" >&2 ; exit 1 ; } ; @SBINDIR@/upsdrvctl stop "$NUTDEV"'
|
||||
# Restart really always, do not stop trying:
|
||||
StartLimitInterval=0
|
||||
Restart=always
|
||||
# Protract the "hold-off" interval, so if the device connection is
|
||||
# lost, the driver does not reapidly restart and fail too many times,
|
||||
# and then systemd would keep the unit failed without further retries.
|
||||
# Notably, this helps start "dummy-ups" drivers retranslating local
|
||||
# devices (so getting a chicken-and-egg problem for driver-upsd-driver
|
||||
# orderly series of initializations). More details in NUT issue #779.
|
||||
RestartSec=15s
|
||||
Type=forking
|
||||
# Note: If you customize the "maxstartdelay" in ups.conf or in your
|
||||
# NUT compilation defaults, so it exceeds the default systemd unit
|
||||
# startup timeout (typically 90 sec), then make sure to set a slightly
|
||||
# longer systemd timeout for the nut-driver unit instances. You can
|
||||
# do this by populating a drop-in configuration, so it is not later
|
||||
# overwritten by updates to your NUT package -- create a dir+file:
|
||||
# /etc/systemd/system/nut-driver@.service.d/timeout.conf with lines:
|
||||
# [Service]
|
||||
# TimeoutStartSec=190s
|
||||
|
||||
[Install]
|
||||
WantedBy=nut-driver.target
|
||||
Loading…
Add table
Add a link
Reference in a new issue