[CentOS] What are the differences between systemd and non-systemd Linux distros?

Wed Oct 17 21:28:27 UTC 2018
Mark Rousell <mark.rousell at signal100.com>

On 17/10/2018 20:03, Warren Young wrote:
> On Oct 17, 2018, at 10:03 AM, Mark Rousell <mark.rousell at signal100.com> wrote:
>> launchd is not being forced on them as systemd is in practice
> Try doing without launchd on macOS.
> If you think that’s irrelevant, count the number of MacBooks at the next FreeBSD conference you attend.

That's Mac. It's not Linux. And that's the point. Mac does not have
Linux's very particular culture and history.

Apple and oranges, and all that. Sure, launchd is an init system but
it's not on Linux. If launchd was on Linux and it had systemd's cultural
issues and, in many people's views, technical issues then the opposition
to it would be identical to the opposition to systemd.

When people go to Mac they accept what it is (mostly). That's a
fundamentally different culture to Linux (or BSD for that matter).

> For an init system to gain sufficient momentum, it must be the default, with no easy way to avoid it.

That's an argument for authoritarianism, which seems to me to be
anathema to the overriding culture of Linux. Can you see why many people
might dislike the personalities involved with systemd, yet, when such an
argument is used in favour of systemd? :-)

>> I should add that the speaker also massively over-simplifies opposition
>> to systemd on the basis that he incorrectly perceives it to be
>> opposition to change. He seems to ignore the fact that, as above, there
>> are substantive objections to the specific architecture and quality of
>> systemd, not merely objections to change with no deeper reason.
> While there certainly are objective problems with systemd’s design and implementation, it is basic human psychology that many people will not move to a newer system despite piles of advantages.  

Quite true but the fact that some people do dislike change (a) does not
make the substantive and objective problems, in many people's views,
with systemd any less real or important and (b) does not mean that the
speaker did not massively over-simplify the opposition to systemd , i.e.
he effectively claimed that it was all to do with fear of change when,
as you agree, there in fact are substantive, real and objective issues
which are widely recognised.

> The major BSDs are fundamentally conservative at the project management level, so I believe this tendency is stronger in the BSD user population than elsewhere in the IT world.  It’s a form of self-selection bias: the BSDs are run conservatively, so they attract a user base that is also technologically conservative, from which come the next generation of core developers, who therefore continue to run the project conservatively.  Consequently, the major BSDs are even more conservative than the Enterprise Linuxes.

An interesting observation. It seems to me that there are aspects of the
Linux culture that are at least as conservative as the BSDs in this
context (are perhaps shared with BSD). One of these aspects is the "do
one job and do it well" expectation of componentisation. In many
people's views, systemd wilfully and unnecessarily tramples all over
this cultural/technical requirement. If this is the case in many
people's views, then it makes a lot of sense that hey are unhappy with it.

>> many people objecting to systemd
>> would nevertheless favour more modern system/service management.
> I’d love to see that quantified.

None of these comments (neither mine nor those of the speaker of the
presentation) are easy to quantify. I can only say that I base my
comments mainly on the contents of technical mail lists and blogs and
similar and I have very frequently observed that (a) a common question
is how users can change init system to something other than either
systemd or SysVinit (depending on whether they are starting with a Linux
that is normally with or without systemd), and (b) there does seem to be
a very common thread that the time had come that something needed to be
done to update SysVinit but that systemd definitely should not be it
(and that the solution, whatever it was, should not have been introduced
in the way that systemd was).

> Alternatives to the BSD rc init system are readily available, yet I think if you were to survey actual use, you’d find that over 99% of BSD boxes use the stock init system.

That's a different metric. People may well stick with the stock init
system but that doesn't mean that they like it or really want it.

> Change has to be forced from the center out on this kind of thing.

Again, an appeal to authoritarianism. Excuse me if I don't wish to join
you on that. Authoritarianism, in all its forms, is dangerous and, in my
view, a form of vandalism.

Also one might ask: What centre? This is the world of Linux. Many people
don't recognise any centre, and quite sensibly so. Indeed, they use
Linux explicitly to avoid the centrism of the likes of Linux or Apple.

As I observed above, this authoritarian centrism in in part why systemd
is so despised. It was effectively forced on a great many users in in a
centrist, choice-limiting manner. A great many people regard this as a
bug, not a feature. I think they might be right.

> The question in my mind is how long it’s going to take for the major BSDs to make such a change at the center, so that the majority of new installs will use a modern init system.  The systemd project started in 2005, and wasn’t widely deployed as the default until about 4 years ago.  If past is prologue, I think this won’t happen on the BSDs for another decade or so, if ever.
> Example: FreeBSD is just now moving to pkg-in-base in earnest, giving it features I first saw in the default install of Debian in about 1995.

That's up to them and their users, isn't it. Just because it's a good
idea doesn't mean it has to be done in a hurry. This was and is one of
the problems with systemd on Linux.

Mark Rousell