Live data from Hacker News

Why systemd is winning the init wars and other things aren't

utcc.utoronto.ca

1–10 of 158 posts

Re: Why systemd is winning the init wars and other things aren't

#2
Interesting follow-up, this stuck out for me:

"To start with and as usual, social problems are the real problems."

This really resonates with me. Once any organization gets to a certain size, getting change to happen is more "social problem" and less "technical problem." When you don't select for people at that stage who can move an entire organization over to a new way of doing things, your organization will stagnate and die. It used to really annoy me at Google when technical evaluators who dismiss those "soft qualities" in candidates. I had a fairly famous Googler tell me point blank that anyone could change the organization by shouting loudly enough. Which I tried to explain was just as false as saying anyone can solve a problem if they write enough code. But alas, they were not ready to hear that at the time.

The author makes an excellent point that much of the root of the "disagreement" can be summed up with a strong sense of "I wouldn't have done it that way." Which is no doubt true, but it has to be combined with "I would do it like this, and I'm willing to spend the next 3 - 5 years listening to the community and addressing their concerns." I certainly see that is a much bigger commitment.

Re: Why systemd is winning the init wars and other things aren't

#4
post #3

Hopefully what happened with pulseaudio does not happen with init

press "E" in grub, then add init="/bin/busybox" to the kernel command line. Then apt-get purge systemd (mounting may or may not be necessary).

That way you can still claim "the first thing I did was to remove it". But contrary to pulse, it will also be the last ;)

Re: Why systemd is winning the init wars and other things aren't

#5
This article is a bit off the mark. Daemontools and runit didn't replace init because they weren't designed to replace init, or to be exclusive technical choices in general. Non-exclusivity means no displacement, just happy co-habitation. Daemontools and runit work great under sysv init, BSD init, or under systemd.

There's a little piece of insight which seems to escape many: there is no serious technical reason why systemd must run as init. Systemd could have been written to coexist in a number of various ways following previous models, running under init and doing things for init.

Systemd is winning this war because it created the war, by conflicting with sysv init.

Re: Why systemd is winning the init wars and other things aren't

#6
post #2

Interesting follow-up, this stuck out for me: "To start with and as usual, social problems are the real problems." This really resonates with me. Once any organization gets to a certain size, getting change to happen is more "social problem" and less "technical problem." When you don't select for people at that stage who can move an entire organization over to a new way of doing things, your organization will stagnat…

yes indeed social problems. or as one of my favorite quotes goes: "Trust no one! The minute God crapped out the third caveman, a conspiracy was hatched against one of them!" --Col. Hunter Gathers, OSI (Venture Bros parody of Hunter S. Thompson)

Re: Why systemd is winning the init wars and other things aren't

#7
"none of these alternate init systems did the hard work to actually become a replacement init system for anything much"

And yet again, the anti-init-choice people show how they still don't understand the argument many of us have against the systemd change.

This accusation presupposes that a change was necessary or desired in the first place. Sorry, no, some of these things should not be tied together. Without that tying, we already have (known, tested) tools that cover most of these features.

Yes, I understand that some people have needs that require more (or different) features in their init process. So they should use systemd or whatever else solves those needs. Requirements and uses for general purpose computers vary a lot, though - especially in an environment like UNIX that encourages customization. My needs, for example, were mostly met by OpenRC's reworking of sysvinit. Some minor customization solved that problem completely. I recognize that some people see systemd as a good fit for their needs. Why do the anti-choice people refuse to recognize that other people might have different requirements.

Again, I'm fine with systemd, as an option. It's the bundling and takeover of all the other tools that is a large part of the problem. Blaming others because we didn't implement your made up requirements is another part. Acting like a monopoly and tying other projects together to force upgrade because of vertical integration is yet another part that makes me question motive in addition to the technical issues.

You want us to support systemd? Disconnect it from other stuff like the INIT (pid=0), the logger, and IPC (dbus). Allow all those to remain as they were previously. Let systemd be just the process launcher/manager, and allow let all of those parts work stand-alone with existing tools. Note: providing more features when your tools are used together is fine (and expected). This way, the software can stand on it sown, and if it really is big of an improvement as the systemd supports suggest, the migration will happen naturally over time.

If, on the other hand, using one tool continues to have the requirement of trading many other system-level tools that I already know and use, for unproven newcomers that seem to ignore the lessons of the past, well... I'm sticking with what already works.

Re: Why systemd is winning the init wars and other things aren't

#8

This article is a bit off the mark. Daemontools and runit didn't replace init because they weren't designed to replace init, or to be exclusive technical choices in general. Non-exclusivity means no displacement, just happy co-habitation. Daemontools and runit work great under sysv init, BSD init, or under systemd. There's a little piece of insight which seems to escape many: there is no serious technical reason why…

Thank you for your excellent insight, as I would have never considered nesting inits.

Re: Why systemd is winning the init wars and other things aren't

#10
post #3

Hopefully what happened with pulseaudio does not happen with init

It can't really - the problem with PulseAudio was that it was adopted by a major Linux distribution before it was ready for primetime. It worked well after a while.

Systemd is has been the main init system of several distributions (like Fedora) for some time now, so I wouldn't worry.

Post reply on HN