Live data from Hacker News

Why I dislike systemd

steven-mcdonald.id.au

121–130 of 254 posts

Re: Why I dislike systemd

#121
post #114
post #33

Earlier quoted context omitted.

> I'm one of the people who jumped ship to OpenBSD in the last year or so. Ha. FreeBSD here. And so long as you get the right hardware, I find BSD to be far simpler than linux distributions out there. Ports? Beautifully elegant and simple. Configurable. Magnitudes easier than configuring rpm/debs. Getting a package approved in debian? Alioth? No offense, the wiki, all these pages on the debian website - they have no…

I used FreeBSD for a while because it had ZFS, and found Ports confusing and fragile. Maybe I was doing it wrong, but the handbook wasn't much use: "here's 4 different ways to do it, we're not saying which is a good idea". Every upgrade took ages, required reading a load of documents, and broke something. There didn't seem to be an equivalent of Debian's Stable, everything was apparently the latest release.

That's what the mailing list and the forum is for where you'd most likely told to just use 'portmaster' which is the easiest. Not that the others aren't easy, too, but it keeps tabs on dependencies for you but its best to pick one method and stick to it.

Re: Why I dislike systemd

#122
post #31

Earlier quoted context omitted.

> Isn't this just `ls /etc/systemd/{user,system,network}//*` (bah HN formatting is messing this up) Nope. There are many virtual units for which there are no files. One example is the on-demand getty units. There are two for "plymouth" boot-splash stuff (I see these attempted-and-failed units on archlinux where plymouth never exists). There's some autofs thing. There's auditd. I'm actually not booted into linux right…

Couldn't/Shouldn't this be solved with some script that traces the dependencies of units? I'm not familiar enough with systemd to understand how to trace dependencies and create a complete list of all units that will run at next boot but I expect this to be doable by someone with that expertise.

  systemd-analyze dot --order | dot -Tsvg > /tmp/system.svg
The resulting dependency diagram may look complex, but consider that there is no equivalent functionality for SysV init scripts despite the fact that they have the same level of inter-dependent complexity.

Re: Why I dislike systemd

#123
post #19

It got the job done by making the 99% majority of use cases more difficult in order to make the 1% minority simpler. This is a design pattern I think is being repeated in systemd. I kinda had the opposite impression. I first encountered systemd when I started messing around with arch for a couple little vps projects. At the time I was doing sysadmin that involved both Ubuntu and CentOS, and I definitely found day-to-…

This is why I suspect that most of the divisions in the sysadmin community regarding systemd are generational. For people (like me!) who have been writing init scripts forever and can do it in their sleep, they'd prefer the flexibility and familiarity of init scripts to a new system that at first glance appears more limited. For people who are less experien^H^H^H^H^H^H^H^Hcrusty :-), init scripts look like a horrifyi…

I wouldn't say the init scripts on OpenBSD are complex:

# cat smtpd

#!/bin/sh # # $OpenBSD: smtpd,v 1.4 2012/10/26 06:51:59 ajacoutot Exp $

daemon="/usr/sbin/smtpd"

. /etc/rc.d/rc.subr

pexp="smtpd: \[priv\]"

rc_reload=NO

rc_cmd $1

Re: Why I dislike systemd

#124
post #114
post #33

Earlier quoted context omitted.

> I'm one of the people who jumped ship to OpenBSD in the last year or so. Ha. FreeBSD here. And so long as you get the right hardware, I find BSD to be far simpler than linux distributions out there. Ports? Beautifully elegant and simple. Configurable. Magnitudes easier than configuring rpm/debs. Getting a package approved in debian? Alioth? No offense, the wiki, all these pages on the debian website - they have no…

I used FreeBSD for a while because it had ZFS, and found Ports confusing and fragile. Maybe I was doing it wrong, but the handbook wasn't much use: "here's 4 different ways to do it, we're not saying which is a good idea". Every upgrade took ages, required reading a load of documents, and broke something. There didn't seem to be an equivalent of Debian's Stable, everything was apparently the latest release.

I have OpenBSD, FreeBSD, and Red Hat 6 (government wanted some software run and guess who gets the $) running in my server room.

Red Hat seems to be fine with yum, and I haven't had a problem yet. FreeBSD's pkg (pkg-ng technically) is ok, but I keep running into problems on upgrading because someone split a pkg or renamed it. I search but don't find a simple solution. I haven't had any problem on the OpenBSD side, but that could be because every 6 months do an upgrade with the new release. Patches are a bit harder on OpenBSD unless freebsd-update does something weird. the whole src thing in the freebsd-update bit me.

Re: Why I dislike systemd

#125

I don't "hate" systemd either, I just think it's a bad approach. It flies in the face of the "open architecture" concept and stifles innovation. It discourages users from learning about how their operating system works, and it unnecessarily puts too much control of a fundamental component of the OS in the hands of a too-small number of people. None of these reflect the Linux I grew up with. Thus, I am not a fan of sy…

Once upon a time, we were obsessed with efficiency and speed of code. We created powerful, but simple systems like sysvinit, and we designed to optimize speed in 80% of use cases. The Linux you grew up with used to mostly run on x86 machines, except the majority of Linux devices now run on ARM with different power requirements, hardware, drivers, etc. than x86 ever had to deal with. The increasing complexity in the use cases of Linux is driving systemd, not some desire to stifle innovation (which IMO is exactly the opposite of what systemd is doing).

Our CPUs got fast enough and our use cases so diverse and network dependent (leading to lots of idle CPU time) that we stopped worrying about raw performance above all else. In nearly every case where you're not doing something glaringly stupid, performance is a function of the complexity of your problem set. Things like power consumption and safe asynchronous communication are more important than raw speed, and these things need to be coordinated through the same interfaces on every Linux machine (though not necessarily through the same methods).

Systemd doesn't so much fly in the face of "open architecture" as it does introduce architectural concepts that are sufficiently abstract that much of the community doesn't fully understand them. But this is complexity for the sake of flexibility -- which is far easier to deal with than complexity for the sake of performance. Best practices around specific use cases will eventually become common knowledge.

Re: Why I dislike systemd

#127
post #54
post #35

This page's horrible readability is a perfect reflection of the kind of folks that dislike systemd. Yeah, newcomers to the Linux land without the expertise you guys acquired through 10 years of using Linux, would apparently appreciate how easy it is to manage a server by invoking some lengthy commands they learned through reading the often overly-dense manual instead of `systemctl start/stop x`. Nowadays some of thos…

Fwiw I like the website. I would have toned down the yellow. And I would probably have had dark on light. But it's really great to have a page that loads nearly instantly - the ratio of information provided : loading time is very good. Other pages take an age to load (and Chrome on iOS has an annoying "feature" where the address can't be selected and copied until the page has almost finished loading).

Agree, it's a pleasure to use a site that isn't burdened by tons of ads, tracking scripts, and tries to re-implement scrolling (badly) if you visit from a mobile device.

See theverge.com for an example of a site that doesn't even scroll smooothly on my android phone.

Re: Why I dislike systemd

#128
post #87
post #61

Earlier quoted context omitted.

Interesting way to think about it. IMHO systemd is taking much of the hacks and weird glue that has historically held distributions together and replaced it with an active upstream project. Maybe some of the solutions they've come up with could need some improvements, but I have much higher confidence those improvements would happen now compared to how things used to be. Nowadays you can code something up and come to…

Unfortunately, the systemd development team is not that easy to work with, which is part of why a lot of people distrust systemd the way they do. In theory, yes, it should be the way you mention it. In practice, even bug reports end up unacknowledged and labeled as features after a few philosophical debates. No one who has used more than one Linux distro would disagree that a unified system to control init services i…

But I think you could find a vocal minority (or several) to oppose ANY particular implementation. One of the reason the anti-systemd crowd has such a hard time gaining traction is because the only thing that unites all of them is opposition to systemd. They don't agree on what should be in its place instead -- some want to hold onto sysvinit, some want Upstart (although that's a dead end now), some want OpenRC, some want dmd, some want runit, some want something else or something that doesn't even exist yet.

Re: Why I dislike systemd

#129

One of the more sensible ^rants^ I've read against systemd (it is KISS for some weirdly convoluted definition of KISS). Too bad these naysayers are not/will not be taken seriously.

Agreed --- this is the first rant against systemd I've seen that didn't talk about Lennart at all, and the first one from which I've ever learned anything. It's a great example of how people ought to argue on the internet. While I find that systemd is great for my purposes, there's plenty of room on the internet for Steven and the BSDs.
Post reply on HN