Author: Didier Kryn Date: To: dng@lists.dyne.org Subject: Re: [DNG] Command to permanently prevent sysvinit from starting
daemon
Le 21/10/2018 à 14:50, Steve Litt a écrit : > On Sun, 21 Oct 2018 02:25:04 -1000
> Joel Roth<joelz@???> wrote:
>
>> On Sat, Oct 20, 2018 at 11:52:53PM -0700, Jimmy Johnson wrote:
>>> On 10/20/18 11:18 PM, J. Fahrner wrote:
>>>> Am 2018-10-21 08:10, schrieb Steve Litt:
>>>>> In Devuan, what's the command to permanently prevent sysvinit
>>>>> from starting a daemon.
>>>> man update-rc.d
>>>>
>>>> You can remove or disable a service.
>>>>
>>>> Jochen
>>> Can a person simple remove the 'exe' properties from the rc-*
>>> script or just rename it?
>> I don't remember the symlink maintenance scripts, so I
>> usually do this:
>>
>> chmod a-x /etc/init.d/exim4
> Does your next update undo that?
>
I'm not an expert, but it seems to me the answer is in inittab; the
following line invokes the daemon which launches all the scripts:
si::sysinit:/etc/init.d/rcS
Considering that, it might suffice to have two versions of inittab.
It could be done by splitting in two the sysvinit package. I imagine
this package could be forked from Debian since it's not going to change
for several decades.
Let's consider the following plot, for example:
package sysvinit: contains only the pid1 part, but depends on
either rcS or runit
package rcS: contains rcS and the associated inittab,excludes
package runit.
package runit: contains runit and the associated inittab, excludes
package rcS.
Now consider the runit script. I see two solutions:
1) provide in the runit package the scripts for everypossible
daemon, but containing the necessary logic to determine if it is
installed and must be started.
2) provide the runit script for every installed daemon, and only
for those installed.
The second option is more attractive, but it means either fork the
package for every daemon (not doable), or convince upstream to maintain
such script, or trigger at install time some word processor able to
generate it, and some action to remove it when uninstalling. Every
daemon would then come with a systemd config file, an rcS script and a
runit script.