[mythtv-users] Recommended Linux Distro post CentOS

Dan Ritter dsr-myth at randomstring.org
Thu Dec 17 18:25:55 UTC 2020


Stephen Worthington wrote: 
> On Wed, 16 Dec 2020 04:25:09 +0000 (UTC), you wrote:
> 
> >No, why should I be bitter, just because some random out of nowhere obsoleted 
> >in about 3 years what I'd spent 30 years getting good at?  No motivation there
> >at all...
> 
> You might want to reconsider that a little.  I started out very
> sceptical about systemd.  And I still not a fan of the "one systemd to
> rule them all" concept.  But I have now used systemd quite a bit and
> so far I have found that using systemd to run things is dramatically
> better than init scripts.

Except -- and this is actually really big -- using daemontools /
runit / supervisor / similar init systems are also much better
than both sysvinit and systemd. And all of those
daemontools-style systems offer smooth integration with the
PID=1 portion of sysvinit, and let you move over services one at
a time.
 
The objection is not "systemd isn't better than sysvinit". The
objection is "systemd isn't enough better than sysvinit to put
up with the crap that goes along with it". And, also: "systemd
wants to take over everything, making things worse along the
way".


> When you had to write an init script, that
> was a mini-project on its own getting it to do everything needed - it
> took ages. 

Here's a typical daemontools-style daemon startup:

--
#!/bin/bash 
USER=minecraft
PORT=33055
MAXMEM=2048M
STARTMEM=1024M

cd /opt/minecraft
exec 2>&1 
exec setuidgid $USER /usr/bin/java -Xmx$MAXMEM -Xms$STARTMEM -jar \
/opt/minecraft/server.jar --nogui --port $PORT
--

That's going to keep one copy of the minecraft server running,
restarting it if it dies, until the system shuts down or it gets
a signal telling it to stop the daemon.

> I do not like the logs going
> into journals so much though - that makes it difficult to access them
> when booted from a live USB or PXE image to do repairs or discover why
> things went wrong.

daemontools-style systems pipe all the output of their programs
into ordinary timestamped, auto-rotated logfiles -- but you can
change that, if you want.

daemontools was written in 2001. runit, a mostly-compatible
reimplementation which adds a PID=1 init, was written in 2004 and has
had a very stable release for the last 6 years. There's an
actively maintained full init system with the same properties
called nosh: https://jdebp.eu/Softwares/nosh/


Every single one of these is simpler to understand, easier to
debug, and less omnivorous than systemd.

-dsr-


More information about the mythtv-users mailing list