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

Re: rc?.d policy?



Brian Servis <servis@purdue.edu> wrote:

>>>No Debian has no policy about runlevels, which is pretty strange if
>>>you ask me, they rejected a bug against policy on this issue.
>>>Nothing is stopping you from changing your own system around. But
>>>be aware that whenever you update any of the packages that use the
>>>rc*.d directories that they will re-add the links back in, at least
>>>until policy is changed.

Policy doesn't say much about this, but update-rc.d(8) defines what is 
expected to happen:

       If  any  files  /etc/rcrunlevel.d/[SK]??name already exist
       then update-rc.d does nothing.  This is so that the system
       administrator  can rearrange the links, provided that they
       leave at least one link remaining,  without  having  their
       configuration overwritten.

>> That is not true. You can futz around with the symlinks all you
>> want - as long as at least one Sxx or Kxx link is present for the
>> package, a re-install or upgrade will _not_ change your
>> configuration. That is kind of the point of update-rc.d

Correct. And it works with update-rc.d from dpkg package (which uses
the symlinks) and also with update-rc.d from file-rc package (which
uses /etc/runlevel.conf instead).

> But if a user removes the S99xdm link in rc2.d then the next time
> xdm is upgraded it will be added again.

According to update-rc.d(8) this shouldn't happen until there is a any 
/etc/rc?.d/[KS]??xdm available.

postinst from the xdm package runs 
        update-rc.d xdm defaults 99 01
So installing xdm the first time should create the following links:

/etc/rc0.d/K01xdm
/etc/rc1.d/K01xdm
/etc/rc2.d/S99xdm
/etc/rc3.d/S99xdm
/etc/rc4.d/S99xdm
/etc/rc5.d/S99xdm
/etc/rc6.d/K01xdm

If you only remove /etc/rc2.d/S99xdm now, there are still 6 other
symlinks there which prevent update-rc.d from creating
/etc/rc2.d/S99xdm again, when run next (except from running
update-rc.d with the -f option).

If this doesn't work, the checklings function in update-rc.d is
broken, but I don't see what should be wrong there at the moment (and
I cannot try this out, because I personally use file-rc and don't have 
any links around).

Tschoeeee

        Roland

-- 
 * roland@spinnaker.de * http://www.spinnaker.de/ *
 PGP: 1024/DD08DD6D   2D E7 CC DE D5 8D 78 BE  3C A0 A4 F1 4B 09 CE AF


Reply to: