Ready to try dependency based boot sequencing?

Frans Pop elendil at planet.nl
Wed Feb 6 19:56:24 UTC 2008


On Wednesday 06 February 2008, Frans Pop wrote:
> This is a resend (with some changes) of a mail earlier sent to Petter
> privately. Contents seem useful for others too.

And here are the most relevant bits of Petter's reply.

(Note: I'm not subscribed to this list.)

----------  Forwarded Message  ----------
[Frans Pop]
> However, it does IMO make sense for anacron and cron to be stopped very 
> early in the sequence as you don't really want them starting anymore when 
a 
> shutdown has been initiated. The fact that insserv moves them so far down 
> could be considered a regression.

I agree, but it is a bug that need to be fixed in the cron and anacron
packages.  They need to have $remote_fs listed in their required-stop
header.

> Below a complete overview of the changes in runlevels (script attached).
> For levels S, 0 and 6 I have not distinguised between K and S scripts (as 
> insserv changes all of them into S scripts, but for the others the 
> distinction is kept.
> 
> A problem I see is that in some levels scripts have been _added_ that were 
> not executed at that level before (no number in the second column).
> Examples are:
> - console-screen.sh (0, 1, 6)
> - ssh (0, 6)
> - pppd-dns (0, 1, 6)
> - hwclockfirst.sh (0, 6)

Hm, strange.  If the scripts are already installed, insserv should not
add them to any runlevels.  I will have to investigate these.  I note
that at least console-screen.sh list the runlevels 0, 1 and 6 in its
default-stop header, whihch I guess is wrong.

> The last means that on reboot/shutdown the hardware clock will now be 
> updated twice instead of once, thus _slowing_ the shotdown process...

Yes.  I will try to reproduce this issue in the test suite, to make
sure I get rid of it permanently.

> Basically I feel that every case where a script that moves more than
> a couple of places up or down should be investigated. In a lot of
> cases it will probably not be a real issue or even a real
> improvement. In other cases it may need fixing.

I agree.  And as far as I have investigated, it is bugs in the
dependencies of the affected scripts, or actually correct.


Addressing those which moved more than 5 steps.

> Runlevel S
[...]
> pcmciautils             6       27      -21

This is a bug in the script.  The script got a header, but is missing all 
dependencies.

> procps                  7       19      -12

This is correct.  procps can and should run as soon as /proc is mounted.

> udev-mtab               17      22      -5

This is correct.  updating mtab can be done as soon as / is mounted 
read-write.

> alsa-utils              24      34      -10

This is a bug in the dependencies.  It should depend on $remote_fs,
not $local_fs.

> hwclock.sh              25      11      14

I believe this is correct.

> lm-sensors              27      32      -5

Not sure.

> urandom                 29      36      -7

This is correct.  urandom can run as soon as /var/ is mounted by
mountall.sh.

I will have to look at the other runlevels later.

Happy hacking,
-- 
Petter Reinholdtsen
-------------------------------------------------------



More information about the initscripts-ng-devel mailing list