this post was submitted on 04 Oct 2023
728 points (95.3% liked)

linuxmemes

20713 readers
2131 users here now

I use Arch btw


Sister communities:

Community rules

  1. Follow the site-wide rules and code of conduct
  2. Be civil
  3. Post Linux-related content
  4. No recent reposts

Please report posts and comments that break these rules!

founded 1 year ago
MODERATORS
 
top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 158 points 11 months ago* (last edited 11 months ago) (2 children)

Having sniffed around the Linux community for years, I feel like whatever flaws SystemD has as a computer program are of tertiary importance when faced with the thing that really matters:

  • The developer of SystemD was mildly rude to some community members that one time. That means he is two hitlers and a stalin wearing a trenchcoat and everything he makes must be utter garbage.
[–] [email protected] 82 points 11 months ago (2 children)

Yeah they seem to think he "took over" the Linux init process all by himself. Like distro maintainers aren't the ones who made the decision to move to systemd based on technical merits (presumably).

[–] [email protected] 25 points 11 months ago

I think people like that view Linux as some kind of fiefdom rather than a community of individuals.

load more comments (1 replies)
load more comments (1 replies)
[–] [email protected] 122 points 11 months ago (6 children)

It's a giant mess of interconnected programs that could theoretically still be disentangled, but in practice never are. It was very quickly and exclusively adopted by pretty much every major distro in a short period of time, functionally killing off any alternatives despite a lot of people objecting. Also, its creator was already pretty divisive even before systemd, and the way systemd was adopted kinda turned that into a creepy hate cult targeted at him.

There's nothing actually wrong with systemd. I personally wish there was still more support for the alternatives though. Systemd does way more than I need it to, and I just enjoy having a computer that only does what I want.

[–] MeanEYE 58 points 11 months ago (1 children)

Am not sure about "giant mess" but indeed it has a lot of moving parts. All that said, systemd is solving tangible problems which is why you will almost never see maintainers complain about it. It's mostly Linux users which by definition oppose any change, Firefox 4 → Firefox 5, Gnome2 → Gnome3, SysV → systemd

[–] [email protected] 32 points 11 months ago

"Giant mess" was maybe an uncharitable phrase to use, but it really is a lot of programs that are always used together because trying to mix and match it with other stuff or even just take pieces out is a massive pain in the rear. Again, I don't actually object to systemd. I use it myself because it's so much better supported. It is not always ideal for everything though, and I'm a little sad about the lack of support for other options.

The idea that Linux users by definition oppose any change is just silly though. We almost all got here by making a big change in how we use computers. Almost any change will be opposed by at least some members of any group. That's just how people are. That's not a special thing about Linux users. Sometimes a change that is overall for the better causes some things to be lost, and saying the people who are unhappy with that "by definition oppose any change" is kinda creepy, if I'm being honest. In particular all of those examples you gave are times people were forced into a change that was not all for the better, especially in the short term, with little notice, and no opportunity to voice their concerns in a more constructive manner. Of course some people complained. It would be weird if they didn't.

load more comments (5 replies)
[–] [email protected] 78 points 11 months ago (1 children)

i will never grow tired repeating this: systemd is the best thing that happened to linux in the 10s

[–] [email protected] 37 points 11 months ago (2 children)

Yeah I agree. It was rolled out pretty early in its development maturity so it undoubtedly left a bad taste in some people's mouths. Overall it's a net positive though. I don't want to go back to the old way.

load more comments (2 replies)
[–] CakeLancelot 75 points 11 months ago (15 children)

Does too much for one tool (against unix philosophy) and has poor interop with other tools (binary logfiles).

[–] ichbinjasokreativ 66 points 11 months ago

That's not really true. systemd is split up into many different, independent binaries, and each of those does one job and does it well.

[–] [email protected] 40 points 11 months ago (1 children)

Linux User when their program does more than IO text streams:

load more comments (1 replies)
[–] ichbinjasokreativ 21 points 11 months ago (2 children)

That's not really true. systemd is split up into many different, independent binaries, and each of those does one job and does it well.

[–] CakeLancelot 57 points 11 months ago

Does it really matter if you can't use those independent binaries with any other init system? If you want to use systemd, you pretty much have to take the whole ecosystem.

[–] [email protected] 18 points 11 months ago (1 children)

If I remember correctly, there was a ton of pain configuring a minimal systemd. I am unaware if that has changed much in recent years.

Here is an old thread talking about it: https://unix.stackexchange.com/questions/150975/what-is-needed-for-a-minimal-systemd-boot-to-launch-getty-on-a-virtual-console

load more comments (1 replies)
load more comments (12 replies)
[–] seaQueue 65 points 11 months ago (7 children)

I find it incredibly useful - instead of needing to learn a million quirks about the init of every distro they all use the same predictable system now, you learn it's quirks once and those skills transfer everywhere. Hopping from Ubuntu to Debian to Arch to Fedora is trivial now compared to the old days.

That and systemd-boot and systemd-nspawn are awesome.

[–] [email protected] 15 points 11 months ago (1 children)

Hopping from Ubuntu to Debian to Arch to Fedora is trivial now compared to the old days.

Another take of this is we're losing diversity which might have some consequences in the future.

load more comments (1 replies)
load more comments (6 replies)
[–] Perroboc 55 points 11 months ago (6 children)

I LOVE systemd, flatpaks, appimages, wayland, and pipewire. The desktop environment feel way more managed!

Sure, wayland is not complete yet (HDR), flatpak is missing some things (some portals), but the whole ecosystem is way more mature than before.

This is from someone who used init.d scripts, apt-get and dpkg, x.org, and alsa/pulseaudio/gstreamer.

[–] [email protected] 19 points 11 months ago (3 children)

first sentence i thought you were being ironic

load more comments (3 replies)
load more comments (5 replies)
[–] [email protected] 50 points 11 months ago* (last edited 11 months ago) (3 children)

Binary logs are annoying, but once you get the hang of journalctl, it's not so bad. That is about my only remaining hate for it.

In its early days, it was a serious pain. Its service management was annoying and is still a bit scattered to this day. It has improved a ton, for sure.

Then there was PID 1. Here is a legacy discussion about it as I refuse to talk any more about it these days: https://news.ycombinator.com/item?id=10485131

Above all else, it was kinda forced on us. Most of us were comfortable with sysv already. If I remember correctly, people often said the main dev for systemd could be a real jackass. I have no judgement or experience regarding that though.

[–] [email protected] 16 points 11 months ago

Above all else, it was kinda forced on us. Most of us were comfortable with sysv already.

And at least for me it solved a problem which didn't exist. Sure, there's some advantages, but when it rolled out it was a huge pain in the rear and caused various problems and made things more complicated for no apparent reason.

load more comments (2 replies)
[–] [email protected] 49 points 11 months ago* (last edited 11 months ago) (8 children)

ya see, when i ssh into a server and i run some commands, sometimes i mess up, see, and i wanna reboot to get the system back to a known state, right

and even if the system is in an unknown or invalid state, right,

i don't wanna wait half a bloody hour for systemd to get tired of waiting for 1m30s countdowns and actually bounce the damn machine, if it bounces at all

and i can't just hold the power button, see, because i'm 2000 miles away from the bloody box

(I did not make that number up, by the way. I once has a hard drive get hot removed while it was mounted, couldn't umount it so I had to reboot, and it confused systemd so bad it took 27 minutes to shut down)

EDIT: aw come on, are you really gonna downvote without leaving a reply?

[–] [email protected] 24 points 11 months ago

how is this any diffrent from SysV scripts hanging and preventing a reboot that way....

you are blaming SystemD for an issue not part of SystemD, but a generic computing issue...

and yes, you can still just hard reboot your system with SystemD as @[email protected] has point out....

[–] seaQueue 24 points 11 months ago* (last edited 11 months ago) (2 children)

Check out systemd's userspace reboot feature, they implemented it to avoid long reboot times on server hardware.

https://www.phoronix.com/news/systemd-254-Released

load more comments (2 replies)
load more comments (6 replies)
[–] [email protected] 46 points 11 months ago* (last edited 11 months ago)

I use runit on Artix. I wasn't around for the init wars, but dove into the rabbit hole of Debian email exchanges, where lots of shade was thrown around because of suspicions over corporate influence on Linux, and Canonical dropping the ball because of their Licensing on their competitor init, Upstart.

I reviewed videos of Poettering going on about it, adamently placing systemd as the hill he was willing to die on.

I read the Torvaulds email complaining about Kay Sievers being an asshole. Looked at how Kay Sievers famously refused to fix early boot problems with systemd. Read Laurent Bercot's technical break down of why even from a software design level, systemd should be called into question.

Its all interesting, and on my home desktop, I decided to only use Artix, Void, Gentoo, or Devuan over any of the others for as long as I can.

At work, I don't care. Do I wish that runit or s6 was more predominant and widely used? Absolutely. Imho both init systems are just more minimal and their implementations are so solid, they are two of the very few pieces of software I can say are finished. No notes, no new features, and because of the minimal attack surface, barely any security patches have been necessary.

Due to their following of the UNIX Philosophy, both runit and s6's source code can be reviewed in an afternoon, as opposed to systemd which has taken me considerably more time to parse through (though I'll admit systemd has some decent comments in their code that helps out).

But at work, while I have my preferences and opinions, the systemd debate isn't even close to the top of my list on arguments I'd like to have at the work place.

On Lemmy otoh, lol. 😁

[–] [email protected] 44 points 11 months ago

Are you using Linux for ordinary daily tasks like browsing, gaming, and coding? Then SystemD is perfect for such systems. No need to use distros that sell the lack of SystemD as their main selling point—it's more trouble than it's worth. Avoid SystemD haters like the plague.

Do you use Linux for enterprise servers? Then SystemD is just one of the options for you, go try all of them out to see what's best for such workflow.

[–] Deckweiss 40 points 11 months ago (16 children)

A stop job is running ... 3/180 s

[–] [email protected] 18 points 11 months ago

Then when it gets to 180 it just adds 180 more seconds.

[–] [email protected] 14 points 11 months ago

This is giving me PTSD flashbacks...

load more comments (14 replies)
[–] TootSweet 36 points 11 months ago

Everything everybody else said plus everything with Systemd is just... more complex. With OpenRC, it felt like I could keep all the information I needed to use and administrate it in my head. With Systemd, I have to look stuff up all the time.

[–] [email protected] 35 points 11 months ago

I don't get the hate as well. It's great for running services and system administration.

[–] [email protected] 33 points 11 months ago* (last edited 11 months ago)

It does things in a way that it's hard to use other init without banning Systemd completely from your repo. And because it has feature and scope creep and causes dependencies to it everywhere, that does not happen once you're on it, too much work. Which most distros are, because at it's time it was either Systemd or SysV scripts.

[–] Zeth0s 29 points 11 months ago (3 children)

I simply don't care. I am in a position lucky enough that I can trust distro maintainers, without the need to care about the details, as long as my system behaves as I expect, satisfying my requirements of reliability and stability

load more comments (3 replies)
[–] [email protected] 22 points 11 months ago* (last edited 11 months ago) (5 children)

Roughly speaking, it is because it does not follow the Unix philosophy and proposes to do several tasks making the code very complex and therefore more susceptible to bugs.

[–] epat 17 points 11 months ago (4 children)

But systemd is not a single tool, nor a single binary, it's a collection of tools.

load more comments (4 replies)
load more comments (4 replies)
[–] [email protected] 21 points 11 months ago (7 children)

I'd argue systemd has bad, borderline incorrect design. I didn't like SysV because it caused inconsistencies and hard to understand processes. systemd fixed the inconsistencies but the rest is sort of hacked together bullshit that developers play wackamole with. That hackery is the reason it can't be used in Docker for example. It has a complicated parser for a language that's basically a DSL that doesn't really solve the problem of complexity for the user. It requires a whole slew of random non-sense to work and it feels like stars have to align perfectly for things to function. It encourages bad behavior like making everything socket activated for literally no reason.

Compared to SysV, I'll take systemd. I don't find it ideal at all though. It's serviceable... much like how Windows services are serviceable. S6 is I think what the ideal init would look like. I'm more impressed with it's execline and utilities suite but that's another story.

The only thing I think systemd did right is handling cgroups.

load more comments (7 replies)
[–] [email protected] 19 points 11 months ago

I underatand, but I just don't care. Give me a functioning linux desktop and I will also run your garbage proprietary nvidia software. The alternative is windows, so I have to take what I can get.

load more comments
view more: next ›