Re: s6-svscan catch-all logger service

From: Laurent Bercot <>
Date: Fri, 26 Apr 2019 09:45:38 +0000

>i think this feature does not require too much "ad-hoc" C code in
>the svscan source. it is easy to do that in C while it becomes hard
>to impossible do write a shell script that does it (ok, in execline
>this seems to be possible, but you need that package installed then).

You need to have execline installed to run s6 anyway. And again,
you don't have to do the required effort yourself, it has already
been made for you and you can just reuse the existing solutions.

>pretty artificial counter example since noone will use a service dir
>outside the scandir. i do not know if this is even possible ...
>in any case doing so seems very odd to me and was probably
>not intended by the author.

Yes, from what I can see in the code, it works when the logdir is
in the scandir, and it seems to be the intended use. But it also
*appears to work* when the logdir is not in the scandir, and that
is not good. We're talking pid 1 here. It needs to be *airtight*.

>using a fifo here is IMO not the best solution when using a simple pipe(2)
>would suffice since fifos need read-write access to fs they reside on.

Running a supervision tree requires a rw fs anyway, so that's not a
problem at all.

>> with a focus on turnkey sysvinit compatibility
>who needs such compatibility anyway ?
>those who want/need it should run SysV init directly
>and start s6 per init script/inittab entry.

Distributions do. They don't want to spend hours of effort looking
for places where sysvinit assumptions are made and fixing them, and
that is understandable. Even systemd came with compatibility
halt/poweroff/reboot/shutdown binaries, to make it easier for
distributions to switch.

Received on Fri Apr 26 2019 - 09:45:38 UTC

This archive was generated by hypermail 2.3.0 : Sun May 09 2021 - 19:44:19 UTC