systemd, as a service manager, is decent. Not necessarily a huge improvement for most use cases.
systemd, the feature creep that decides to pull every single possible use case into itself to manage everything in one place, with qwirks because making a “generic, do everything” piece of software is not a good idea, is not that great.
systemd, the group of tools that decided to manage everything by rewriting everything from scratch and suffering from the same issue that were fixed decades ago, just because “we can do better” while changing all well known interfaces and causing a schism with either double workload or dropping support for half the landscape from other software developer is really stupid.
If half the energy that got spent in the “systemd” ecosystem was spent in existing projects and solutions that already addressed these same issues, it’s likely we’d be in a far better place. Alas, it’s a new ecosystem, so we spend a lot of energy getting to the same point we were before. And it’s likely that when we get close to that, something new will show up and start the cycle again.
“I hate systemd, it’s bloated and overengineered” people stay, perched precariously on their huge tower of shell scripts and cron jobs.
If systemd was only managing services there would be less opposition. People opposed don’t want a single thing doing services and boot and user login and network management and…
Are they also opposed to coreutils being a single project with dozens of executables doing different things?
The systemd debate is basically dead. There are very few against it, but many accept it by now. Just avoid phoronix forum and some other places.
“Just avoid places that sysadmins and security guys frequent and get your opinions on systemd from memes and people running arch on home machine”. Great plan.
Systemd is absolute and utter shit, especially from security perspective.
Noone was asking security guys but package maintainers.
My favorite systemd thing is booting up a box with 6 NICs where only 1 was configured during the initial setup. Second favorite is betting on whether it will hang on reboot/shutdown.
Great tool, 10/10.
My favorite was when the behavior of a USB drive in
/etc/fstab
went from “hmm it’s not plugged in at boot, I’ll let the user know” to “not plugged in? Abort! Abort! We can’t boot!”This change over previous init behavior was especially fun on headless machines…
You could just use systemd mounts like a normal person. Fstab is for critical partitions
This happened to me when Debian switched from SysV to systemd. I am not the only person who experienced this (e.g., https://bbs.archlinux.org/viewtopic.php?id=147478 ).
This is not to say the systemd behavior is wrong, but it essentially changed the behavior of
fstab
. Whether this is Debian’s fault, Arch’s fault (per the above link), systemd’s fault, or my fault is a fair question. But this committed that most egregious of sins per our Lord and Savior Torvalds — it broke my userspace.That was a really long time ago. (2015) I don’t understand why you are holding a grudge for almost 10 years. Most people have never used a system without systemd.
Bullshit, there’s always reasons listed. Some more, some less opiniated, but there’s always lists.
For me personally:
- no portability
- not-invented-here syndrome
-
- manages stuff it shouldn’t, like DNS
-
- makes some configurations unneccessarily complicated
- more CVE than all other init together
-
- service manager that runs with PID 0
To the feature creep: that’s kind of the point. Why have a million little configs, when I could have one big one? Don’t answer that, it’s rhetorical. I get that there are use cases, but the average user doesn’t like having to tweak every component of the OS separately before getting to doom-scrolling.
And that feature creep and large-scale adoption inevitably has led to a wider attack surface with more targets, so ofc there will be more CVEs, which—by the way—is a terrible metric of relative security.
You know what has 0 CVEs? DVWA.
You know what has more CVEs and a higher level of privilege than systemd? The linux kernel.
And don’tme get started on how bughunters can abuse CVEs for a quick buck. Seriously: these people’s job is seeing how they can abuse systems to get unintended outcomes that benefit them, why would we expect CVEs to be special?
TL;DR: That point is akin to Trump’s argument that COVID testing was bad because it led to more active cases (implied: being discovered).
Sure, some like overengineering.
is it overengineering or just a push back against “make each program do one thing well,” and saying yeah but I have n things to do and I only need them done, well or not I just need them done and don’t want to dig through 20 files to do it…
I feel like anyone who genuinely has a strong opinion on this and isn’t actively developing something related has too much time on their hands ricing their desktop and needs to get a job
As someone who has strong opinions on this, and not only has a job but has a job related to exactly sort of thing… We use freebsd.
Specifically to avoid shit like systemd, and other questionable choices forced down people’s throats by idiots who can’t stop touching things that work well because they didn’t invent it.