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
_______________________________________________
Nut-upsuser mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/nut-upsuser