diff options
author | Pierre Labastie <pierre.labastie@neuf.fr> | 2022-03-22 11:13:19 +0100 |
---|---|---|
committer | Pierre Labastie <pierre.labastie@neuf.fr> | 2022-03-25 10:19:53 +0100 |
commit | 27d23b1d4161c092a4a58391ad2ad92c8b5c4844 (patch) | |
tree | 5e01bd47d1cba041caf4d82659c2d2a9ea955f7e /udev-lfs/rule_generator.functions | |
parent | 17c6532e0fa4afcec0797d206a0c88f37c2d0759 (diff) |
Change semantics of S and K files
Presently, there are a lot of special cases:
- runlevel 0 and 6 unconditionally run "script stop" if they
find a Kxxscript symlink. This may lead to trying to stop an
already stopped device if for example switching to runlevel 0/6
from runlevel 1. This can be fixed by stating the convention
that it is the responsability of scripts to check that the service
is running before killing it (or not running before starting it).
Still, we shouldn't try to stop a service if it was marked K in
the previous runlevel. And same for S files: we shouldn't try to
start a service that was marked S in the previous runlevel. Note
that changing runlevel is not a "reset": if a user has manually
changed the state of a daemon, this state will remain the same
upon changing runlevel if the S/K status of that dameon is
the same in both runlevels.
- Sxxscript symlinks in runlevel 0/6 are run as "script stop"
instead of the more intuitive "script start". This does not interact
well with LSB-tools (some scripts would need "Default-Start: S 0 6"
but then it is impossible to get correct "Required-Start" or
"Should-Start" fields). Furthermore, having a counter-intuitive
behavior is error prone. So now runlevel 0/6 will run "script
sart" for a Sxxscript.
Diffstat (limited to 'udev-lfs/rule_generator.functions')
0 files changed, 0 insertions, 0 deletions