On Sun, 17 May 2020 13:46:28 +0200
Didier Kryn <kryn@???> wrote:
> Le 16/05/2020 à 11:30, Steve Litt a écrit :
> > On Fri, 15 May 2020 14:44:06 -1000
> > Joel Roth via Dng <dng@???> wrote:
> >
> >
> >> Reminds me to revisit https://ewontfix.com/14/
> >> for Felker's Broken by Design article on systemd.
> > That web page changed my life. When I saw, on that page, how simple
> > PID1 could really be, that was when I really started to despise
> > systemd.
> I just re-read this nice document, thanks for reminding it.
>
> It is very intresting because it immediately raises a question:
> what if pid2 (called rc here) crashes? It isn't respawned by pid1.
Your preceding paragraph is *precisely* the strongest
stated benefit of s6 over runit: s6 supervises its equivalent to the rc
file, whereas runit pretty much conforms to Felker's model.
If one is worried about the rc file crashing, one should use s6. I've
been using runit almost 5 years, and I don't remember a case of the rc
file crashing. Keep in mind that the rc file can fork off everything it
needs to fork off, doublefork the things it wants parented by PID1, and
then when the rc file's work is done, it simply exits.
>
> rc, as the supervisor of all other daemons, is essential to
> maintain the state of the system. I can think of four options when it
> crashes:
>
> 1) respawn it, but then, why wouldn't it crash again immediately?
>
> 2) reboot, but this may have the same effect as opton 1 if the cause
> of the crash persists.
>
> 3) stop the system, but why wouldn't it produce the same effect as
> the two options above at next boot.
>
> 4) do nothing and let the admin investigate. But at least there
> should be a possibility for the admin to log in on the console, which
> means spawning and re-spawning getty or sulogin.
>
> Therefore, as it has been said already, I'm for keeping the
> current sysv-init (but not sysv-rc) as is,
That's exactly how I feel. It's just so easy to use sysv PID1 with a
different supervisor. I think also it's necessary to keep some of the
sysvinit early boot stuff. But the daemons would all be easier to do
with a separate process supervisor.
> instead of reducing it to
> the minimalistic example of Rich Felker, despite my respect and
> admiration for him.
Even Rich Felker admitted a practical init would need to be more
complicated than his 16 line PID1.
SteveT
Steve Litt
May 2020 featured book: Troubleshooting Techniques
of the Successful Technologist
http://www.troubleshooters.com/techniques