On Sun, 2004-03-07 at 22:55, Michael Stone wrote: > On Sun, Mar 07, 2004 at 10:14:11PM +0100, Thomas Hood wrote: > >Argh! You're not supposed to delete _any_ links [...] > >If there is neither an S nor a K symlink for a service in a > >runlevel it [...] is a misconfiguration. > > no, it's a no-op.
The configuration is not interpreted to mean "no-op". As I said before, > if you ask invoke-rc.d to start a service on entering > such a runlevel then it will start it. Perhaps you mean that the absence of a symlink _should_ be interpreted to mean "no-op", but that is not how the System V init system works in Debian today. Incomplete symlink farms were not contemplated when the various tools were written; as a consequence, incomplete symlink farms result in weird behavior. > >If there is neither an S nor a K symlink for a service in a > >runlevel then the init system does not know what it is supposed > >to do to the service on entering that runlevel. > > It's supposed to do nothing. (And does.) Where do you read that it is "supposed to" do nothing? All the documentation I have ever read leaves the behavior of the init system unspecified for the case of missing symlinks. The system does not always do nothing in the absence of an rc symlink. If a services's symlink is missing for a certain runlevel and something "invoke-rc.d start"s the service in that runlevel then the service will be started. Suppose, for example, that you have deleted the symlink for service foo in runlevel 2 and you are running in runlevel 2. Foo is not running. You upgrade the foo package and service foo will be started. That is improper behavior resulting from misconfiguration (or, if you prefer, from our not having enhanced the init system so that it interprets an absent symlink consistently as "do nothing"). Deleting symlinks doesn't disable services. It just removes information about whether or not the service should be running in that runlevel, with the result that the service is sometimes started and sometimes not. Until the init system is enhanced, tools should not configure Debian systems in ways that the init system has not been designed to handle properly. There is evidently a lot of confusion surrounding this issue. Something should be added to the Debian Reference about it. -- Thomas Hood <[EMAIL PROTECTED]>