Re: NCID with no rcS.d
Dmitriy Matrosov wrote:
> 2011/11/24 lrhorer <lrhorer@satx.rr.com>:
>> OK, so here's the deal. I compiled and installed ncid on one of my
>> Debian servers Everything seems to be working just fine. There's
>> one small item, though. When I took the init scripts and ran
>> update-rc.d, it gave me a warning saying "stop runlevel arguments (0
>> 1 6) do not match LSB Default-Stop values (S 0 1 6)". When I looked
>> at the scripts, they have the line
>>
>> # Default-Stop: S 0 1 6
>>
>> in the LSB. Now as I understand it, by the script definition, there
>> should be links in /etc/rcS.d to the scripts in /etc/init.d with
>> names like K20ncidd.init, and so forth. Per the output of
>> update-rc.d, however, these links were not created, but all the
>> others were.
>>
>> First of all, why did the routine put up that warning and fail to
>> create the links?
>
> As i understand, update-rc.d does not create any links - it just
> manages them (disables (rename SXX to KXX), enables (rename KXX to
> SXX), etc).
No, that's not true, at all. See my response to Arno above. If one
supplies the enable or disable argument, then indeed update-rc.d does
not create links, but the other commands do create or delete links:
RAID-Server:/etc/init.d# update-rc.d
usage: update-rc.d [-n] [-f] <basename> remove
update-rc.d [-n] <basename> defaults [NN | SS KK]
update-rc.d [-n] <basename> start|stop NN runlvl [runlvl] [...] .
update-rc.d [-n] <basename> disable|enable [S|2|3|4|5]
-n: not really
-f: force
>From the man page:
NAME
update-rc.d - install and remove System-V style init script links
....
When run with either the defaults, start, or stop options, update-rc.d
makes links /etc/rcrunlevel.d/[SK]NNname that point to the script
/etc/init.d/name.
> This is insserv duty to install init script links. Try
> reinstall init script with insserv: frist - remove, and then install
> again.
> # insserv -r <init_script_name>
> # inssert <init_script_name>
It would be a lot easier just to create the link by hand. As Arno
pointed out, however, there's really very little or no operational
impact to the kill script for runlevel S being missing.
Reading through the man page again, I can across this, however:
If defaults is used then update-rc.d will make links to start the
service in runlevels 2345 and to stop the service in runlevels 016.
So that's why it didn't create the runlevel S script. This behavior is
the legacy behavior, mandated by the existence of a file named .legacy-
bootordering. Sure enough, the file is there.
Reply to: