[Nut-upsuser] NUT on openSUSE 12.3 requires additional systemd service unit
Roger Price
roger at rogerprice.org
Thu Aug 15 20:02:50 UTC 2013
On Wed, 14 Aug 2013, Michal Hlavinka wrote:
>> The service unit consists of a new file
>> /etc/systemd/system/ups-delayed-shutdown.service
>
> What exactly is this supposed to do?
The proposed service unit fixes an openSUSE 12.3 problem, in which the UPS
is not powered off on system shutdown.
> When system is shutting down because of power failure (and low battery)
> ups should be powered off with /lib/systemd/system-shutdown/nutshutdown
> script.
In openSUSE 12.3 there is no directory /lib/systemd/system-shutdown, and
no script "nutshutdown". I am guessing that you use Fedora.
> That's also the correct location for ups shutdown script.
My original script was in /lib/systemd and I was told in the systemd-devel
mailing list that home-brew scripts such as mine should not be placed
there, but in /etc/systemd/system.
> It's executed after everything else. Using Before=umount.target is
> especially bad bad idea. It's not guaranteed that umount sync can finish
> in time,
Perhaps I misunderstand your comment, but I'm not worried about
umount.target running late. That's not a problem. Finishing early would
be a problem, but that's what the "Before" and the "Type=oneshot" is
intended to handle.
Quote from man systemd.service: Behavior of oneshot is similar to simple,
however it is expected that the process has to exit before systemd starts
follow-up units.
By the way, "Before=umount.target" didn't seem to shock the systemd
guys.
> so you can have power down during filesystem sync with all the
> consequences.
Agreed - systemd executes my openSUSE ups-delayed-shutdown.service at the
very beginning of the shutdown sequence, and there is a very real
possibility of the UPS shutdown with its default 20 sec delay occuring
before the system shutdown. That is why I have the options
offdelay = 30
ondelay = 40
in file /etc/ups/ups.conf.
Roger
More information about the Nut-upsuser
mailing list