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

Re: Bug#475626: nss-ldapd init script sequence number



On Mon, 2008-04-28 at 16:38 +0200, Petter Reinholdtsen wrote:
> This is exactly the kind of problems the dependency based boot
> sequencing is supposed to solve.
[...]

I have added:
  Should-Start: slapd
to fix the problem that nslcd should be started after slapd.

However to solve the problem that nslcd should be started before mail
servers I would like to add:
  Provides: $named
at least exim and postfix have a Required-Start for this) but the
description on http://wiki.debian.org/LSBInitScripts suggests that such
a provides should be specified in a different place. Where should that
be?

> Anyway, while we wait for Debian to switch to dependency based boot
> sequencing, I believe the best option for you is to get slapd moved at
> the start and end.

I have filed bug #478674 for this. The end sequence is already very high
(80) so I don't think there is a reason to make this even higher. The
dependencies of slapd are either started at runlevel S ($remote_fs and
$network) or at sequence 10 ($syslog).

> > This also brings up the problem with what to do with existing
> > installations. If I understand correctly changing the parameter to
> > update-rc.d will not change any existing symlinks so any changes
> > that are made now will only affect existing installations.
> 
> This is correct.  If you want to change the sequence number, the only
> option provided by the update-rc.d interface is to remove all
> start/stop symlinks and insert it again with new sequence numbers.

This would however change local customisations that administrators may
have made to their init script order. Something like this could do it
though in postinst:

[ -l /etc/rc2.d/S20nslcd ] &&
mv /etc/rc2.d/S20nslcd /etc/rc2.d/S19nslcd
[ -l /etc/rc3.d/S20nslcd ] &&
mv /etc/rc3.d/S20nslcd /etc/rc3.d/S19nslcd
[ -l /etc/rc4.d/S20nslcd ] &&
mv /etc/rc4.d/S20nslcd /etc/rc4.d/S19nslcd
[ -l /etc/rc5.d/S20nslcd ] &&
mv /etc/rc5.d/S20nslcd /etc/rc5.d/S19nslcd
[ -l /etc/rc0.d/K20nslcd ] &&
mv /etc/rc0.d/K20nslcd /etc/rc0.d/K21nslcd
[ -l /etc/rc1.d/K20nslcd ] &&
mv /etc/rc1.d/K20nslcd /etc/rc1.d/K21nslcd
[ -l /etc/rc6.d/K20nslcd ] &&
mv /etc/rc6.d/K20nslcd /etc/rc6.d/K21nslcd

However this would work around update-rc.d and be a policy violation:
http://www.debian.org/doc/debian-policy/ch-opersys.html#s9.3.3

I suspect not much packages do this when changing sequence number. e.g.
I have an etch system which has been upgraded a lot of times that starts
nscd at sequence 19 but my sid system that has been installed about a
year ago starts it at 20.

-- 
-- arthur - adejong@debian.org - http://people.debian.org/~adejong --

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: