[Piuparts-devel] Bug#546540: piuparts: Report inconsistent update-rc.d calls?

Petter Reinholdtsen pere at hungry.com
Tue Sep 22 14:15:57 UTC 2009


Here are first draft for info pages regarding the issues with
dependency based boot sequencing.

First the issue with update-rc.d call inconsistent with LSB headers.

=======================================================================
Some packages have inconsistency between the init.d script headers
used with dependency based boot sequencing and the runlevels specified
on the update-rc.d command line and used by the legacy boot ordering.
Such inconsistency is most likely a bug in the package, as the two
ways of ordering init.d scripts should enable and disable the scripts
in the same runlevels while Debian migrate to dependency based boot
sequencing.

Such inconsinstency is reported like this when a postinst script call
update-rc.d

  update-rc.d: warning: initdscript start runlevel arguments (2 3 4 5) do not match LSB Default-Start values (S)
  update-rc.d: warning: initdscript stop runlevel arguments (0 1 6) do not match LSB Default-Stop values (none)

Such reports are most likely bugs in the package calling update-rc.d,
and should be reported and fixed in the individual packages.

See the paragraph "How to solve migration problems" at
http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot for
information how to fix these issues.

The commandline to find these logs is: 

  COMMAND=`rgrep "update-rc.d: warning" fail bugged|cut -d " " -f1|sed -e "s#\.log:#.log#"|sort -u 2>/dev/null`
=======================================================================

Next, here is a proposal for an updated text about the packages
refusing to install because of broken init.d headers, ie
<URL:http://piuparts.debian.org/sid/insserv_error.html>.

=======================================================================
Some packages fail to install because their init.d scripts have
headers with bugs.  There are several classes of bugs.  Some packages
fail to install because the init.d script have conflicting
provide. This is normally reported like this:

  insserv: script clvm: service lvm already provided!
  insserv: exiting now!

Other packages fail to install because their dependencies are
missing. This is normally reported like this:

  insserv: Service portmap has to be enabled to start service quotarpc
  insserv: exiting now!

Last, some packages introduce dependency loops, this is normally
reported like this:

  insserv: There is a loop between service script1 and script2 if started
  insserv: exiting without changing boot order!

See the paragraph "How to solve migration problems" at
http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot for
information how to fix these issues.

The commandline to find these logs is: 

  COMMAND=`rgrep "insserv: exiting " fail bugged|cut -d " " -f1|sed -e "s#\.log:#.log#"|sort -u 2>/dev/null`
=======================================================================

I hope these can be used as a first draft.  Please let me know if you
have proposals for improving the texts.

Happy hacking,
-- 
Petter Reinholdtsen





More information about the Piuparts-devel mailing list