[systemd-devel] shutdown on service unit timeout?

Chris Murphy lists at colorremedies.com
Mon Aug 19 14:54:36 UTC 2019


Hi,

Is it possible for a systemd service file to ask for a poweroff upon
service timeout? If not, could it be done; or suggest an alternative?

Here's the use case:

No Screensaver/Powerdown after Inactivity at LUKS Password Prompt
https://bugzilla.redhat.com/show_bug.cgi?id=1742953

The summary is: plymouth waits indefinitely with a prompt for a
passphrase, leads to excessive power consumption including battery if
it's a laptop (it'll wait until the battery dies), and screen burn in.
This can happen unattended if e.g. Fedora is the default boot, but the
user dual boots Windows which has a tendency to wake up, do updates at
"offline" times, and reboots... to Fedora where it waits indefinitely
for a LUKS passphrase.

I'm sure there are other examples. Plausibly anything that hangs
during startup would have this behavior; only once we're at gdm (or
equivalent on other DE's) is there a timer that will at least blank
the screen, and possibly also optionally trigger suspend to RAM.

Or alternative to a service unit opt in method, a way for systemd
itself to opt into a "power off after X minutes unless Y process
reports it's started successfully" type of behavior. In any case, it's
up to the distro to decide the policy, with a way for the user to opt
out of that by setting the applicable timeout value to something like
0, to indicate they really want an indefinite wait.

Thanks,


-- 
Chris Murphy


More information about the systemd-devel mailing list