On Sun, 10 Aug 2003, Micha? Politowski wrote:
> > It is the place to configure such things. You just delete the S* link, and
> > the daemon will not be started.
>
> Except on upgrades, unfortunately.
> http://bugs.debian.org/156161
It is not broken at all. Due to the way sysv-rc works, no symlink at all
means "undefined state". If you go to a runlevel where something is started
(It has a S symlink), then back to a runlevel with no symlink, the service
is left alone (i.e. started).
Likewise, if you go to a runlevel where the service is stopped (K symlink),
then back to a runlevel where there is no sysmlink, the service is left
alone (i.e. stopped).
So, deleting a symlink to mean "do not start it" is an operator error. Put a
K symlink in there if you want the service to not be running on that
runlevel, OR switch to something less annoyingly error prone, such as
file-rc.
Anyway, no symlink = undefined behaviour. Actually adding that RC=104 in
the suggested patch in #156161 will cause trouble. querypolicy() (in
invoke-rc.d) will lose the information that we are dealing with undefined
behaviour.
BTW, if there is no policy-rc.d, undefined behaviour is set by the last
RC= line in querypolicy():
-8<-
else
if test x${RC} = x ; then
RC=104
fi
fi
-8<-
The default can be safely changed to "stop" by changing that to RC=101. I
see no problems with that at all, RC=104 is there just because I wanted no
further annoying complains that I was changing "the default Debian
behaviour", never mind it has always been a broken behaviour since day one
(i.e. before invoke-rc.d existed and packages started services every time
they were upgraded).
So please go on and change that to RC=101. Please do that in sync with
file-rc. Invoke-rc.d for file-rc needs exactly the same change.
--
"One disk to rule them all, One disk to find them. One disk to bring
them all and in the darkness grind them. In the Land of Redmond
where the shadows lie." -- The Silicon Valley Tarot
Henrique Holschuh
Attachment:
pgpPJ8S52ubFa.pgp
Description: PGP signature