Mailing List Archive


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [tlug] Um, so... systemd?



On 2017-01-15 23:17 +0900 (Sun), Edward Middleton wrote:

> Systemd has some more complexity then sysvinit based setups but it
> does more.

In some ways, such as in the internal code, yes it has more
complexity. But in other ways the complexity is much less, actually.

In particular, getting rid of much of the nasty mess of shell scripts
that's been in the traditional Linux startup system is very good, and
moving a lot of the configuration out of shell scripts is even better.
You want some real fun, start tracing thorough those scripts and
figure out the interactions in them when you're trying to debug
something. It's good neither for reliability nor security when all
your "configuration files" are executable code and, even when you
don't directly excecute them, the variables you set go through a
random number of evaluations and substitutions depending on what's
using them and how. Just try putting a character special to the shell
in some of those variables that are eval'd multiple times and watch
things get really interesting. (Systemd doesn't fix all of this, but
it fixes a good chunk.)

On 2017-01-14 21:40 -1000 (Sat), David J Iannucci wrote:

>   https://igurublog.wordpress.com/2014/04/03/tso-and-linus-and-the-impotent-rage-against-systemd/

This makes some good points, but also has a fair amount of
misinformation in it. Some of that is addressed in an [interview] with
Lennart Poettering. (I can't speak to whether Lennart, who claims he
makes it very easy to put in patches, or T'so, who claims it's hard to
get patches in, is correct.) Other things are more due to the
complaints going through a game of chinese whispers. For example,
IgnorantGuru says that T'so "warns of the complexity of the system and
its XML (even javascript-based?) configuration files," yet systemd has
neither of these; it uses a quite simple INI file format.

My understanding about the kdbus thing is that it's rather orthogonal;
you should be able to continue using the userland dbus if you prefer,
or even no dbus at all if that's the route you really want to go and
you can manage to configure the tools you use to handle that.

I'm not sure why T'so had such an issue debugging startup; systemd has
*much* better logging than any other startup system I've seen, and is
also better at letting you shut down and restart various modules
safely, so it should be easier, not harder, to debug problems.

> And it sounds like Red Hat and its "fascist" developers, the ones who
> are forcing this change through, are the Trumps of the Linux world? Am I
> understanding this correctly?

Doesn't really look like that to me. I don't know as much about the
relationships and interactions between the various Linuxes as I do
about the BSDs, but Debian does not seem like the kind of distro that
would switch to something just because Red Hat is using it; they
certainly haven't moved to yum or anything like that even after all
these years.

> ...what are y'all's general viewpoints (briefly? :=) on systemd and
> how it is taking over the Linux distro world.

Personally, I'm a big fan. Systemd is faster, simpler to config and
debug (once you learn it), and journald in particular is considerably
better and more secure than syslog.

There is a bit of a learning curve to it, as there is with anything
new that is significantly different from the old thing, but my guess
would be that if you're a casual Linux user it's going to be an hour
or so of reading and initial playing and then another 8-10 hours,
spread over however many months, of having to stop and look up
something rather than just do what you're used to.

For me, as a sysadmin, I spent about a day reading through the score
of blog entries under "The systemd for Administrators Blog Series"
linked from the [systemd home page], reading the manual pages, playing
about, and creating some basic units myself.

In the next few days, actually, it looks as if I'll be having a stab
at building systemd units for a server I wrote and I'm hoping to use
those (with user systemd) in my test framework for it, as well as for
the production servers, so that my test framework is actually using
systemd to control the server in almost the exact same way the
production systems would be. If that works it will be really cool, and
maybe even worth a TLUG presentation.

> Will we reach a point where the major application software that we
> depend on depends on systemd, and we'll no longer have a choice?

That doesn't actually seem so likely. While systemd itself does a
great job of starting and stopping stuff, there's little it does that
couldn't be done (albeit in a much more half-assed way) with some
shell scripts. There could be software at some point that won't log to
anything but journald, but that doesn't seem all that likely and even
in that case you could still use journald without systemd. Systemd has
a lot of complexity going on inside it to make things run smoothly,
but the external interfaces are broken up into relatively small parts
that are actually pretty simple interfaces overall.

> ...also I'm not a GNOME user, but thinking that it might be time to
> start learning about BSD....

I'm not sure what GNOME has to do with it; I don't use GNOME either,
or much of any desktop system really (just fvwm2 as my window manager,
the XFCE button bar, and dbus), and one of the reasons I ended up like
this is to lessen my dependency on any particular distribution.

[interview]: https://www.linuxvoice.com/interview-lennart-poettering/
[systemd home page]: https://www.freedesktop.org/wiki/Software/systemd/

cjs
-- 
Curt Sampson         <cjs@example.com>         +81 90 7737 2974

To iterate is human, to recurse divine.
    - L Peter Deutsch


Home | Main Index | Thread Index

Home Page Mailing List Linux and Japan TLUG Members Links