[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Dependency based boot sequence conversion



Sven Joachim wrote:
On 2010-05-27 20:26 +0200, Hugo Vanwoerkom wrote:

I just finished a dist-upgrade (1107 packages) and found out that Sid
is moving (has moved?) to a dependency based boot sequence.

This happened quite some time ago, yes.

That explains why the prior dist-upgrade was a failure because the
partition became unbootable. I since overlaid that partition so I
cannot research whether insserv was involved or not, but what happened
is the boot sequence in /etc/rc<x>.d was altered by something and you
could not boot anymore. It felt unsafe to proceed so I abandoned the
upgrade.

This time luck would have it that:

...
dpkg: considering deconfiguration of sysv-rc, which would be broken by
installation of insserv ...
dpkg: yes, will deconfigure sysv-rc (broken by insserv).
...

This is normal, no need to worry.

and

...
Setting up sysv-rc (2.88dsf-5) ...
info: Checking if it is safe to convert to dependency based boot.

error: Unable to migrate to dependency based boot sequencing.
error: Problems detected:
...

I suspect this will happen to many people.  If you don't purge removed
old packages, it is expected to have old init scripts around that lack
the LSB headers with the necessary dependency information.

So I have corrected the errors but before I commit myself with
'dpkg-reconfigure sysv-rc' I want to know what the new boot sequence
*will look like*.

The numbers in the [SK][0-9[0-9]* links will be lower, and the order
will differ somewhat.  "Start" links in /etc/rc[06].d will be converted
to stop links.

I have looked at the dependency graph per
http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot
but that is too unwieldy: it doesn't fit the screen and doesn't answer
my question:

What will the boot sequence be when I convert?

This really depends on which init scripts you have.

Anybody know how to wring that out of insserv?

Try the following (you don't have to be root for that):

$ cp -a /etc/{init,rc?}.d /tmp/
$ /sbin/insserv -p /tmp/init.d/

And inspect the /tmp/rc?.d directories.


Sven, That is exactly the trick that I was looking for.
The result looks scary :-(

Hugo


















Reply to: