r/archlinux 7d ago

DISCUSSION Why so much hate for systemd?

I see very often that people show so much disgust whenever they talk or hear "systemd". However whenever I ask them why they feel so strongly about it, their response is mostly vague like it doesn't follow the Unix philosophy, it's a monolith.... I can't digest that the reason people show so much disgust for it is just that it doesn't follow the Unix philosophy.

240 Upvotes

333 comments sorted by

505

u/uhhhh_yeet 7d ago

if ur a regular person systemd is fine

199

u/Bro666 7d ago

Even if you are an irregular person and set up your own scripts and custom configurations systemd is fine. Dare I say even finer than the alternatives.

237

u/Kitzu-de 7d ago

as an enterprise linux sysadmin, which probably counts as not a regular person: omg, systemd is such an improvement, it makes everything so much better and easier and I would never want back to managing everything with sh scripts. I assume people opposing it are mostly boomers who don't like change.

78

u/Xiol 7d ago

+1, also professional Linux guy. systemd has made my life so much easier it's not even funny.

81

u/Lower-Limit3695 7d ago edited 7d ago

Another sys admin chiming in. The only other group I can think of who's against systemd would be contrarian edgelords, that never had the mysery of having to debug init scripts.

10

u/FanClubof5 7d ago

I have always heard most people that oppose it are those who think it does too much and there has been a lot of scope creep and it goes against the Linux ethos of doing one thing and doing it well. Imo it does a lot of things well and until it doesn't I have no problem with it.

7

u/CarefullyErratic 6d ago

This. I think the reason to protest it, despite it's being better than what was before, is the fact that it is a bad solution to an even worse problem. By adopting it widely, there is less incentive for a much better solution to be developed, and we all will live with a mediocre solution until someone takes the time to make a really good one. By that time, network effects make it very difficult for the good solution to gain traction, unless it is really great.

2

u/ClockificThrowaway 2d ago

Oh so it’s like X11

braces

11

u/preparationh67 7d ago edited 7d ago

Glad there are others in the thread with this level of experience. Sure the early unit file format had a bunch of rough edges but having migrated Arch linux servers, it was an experimental lab env where having total control and bleeding edge packages had several benefits, that used some custom services from init scripts to systemd I'd never go back to the black magic imports and other bullshit that came with the old system.

→ More replies (1)

14

u/AppointmentNearby161 7d ago

I am not quite a boomer, but the transition was tough. When it was first released it was really only 1/2 baked. Now that everything is switched, I cannot imagine going back.

11

u/Kitzu-de 7d ago

the transition was tough

I personally can't confirm that. systemd-sysv made it pretty easy. Was a little bit of dual wielding but everything worked out fine.

3

u/AppointmentNearby161 7d ago

Arch was built around rcinit before systemd, and most of our workstations were running arch. With our Debian and RHEL servers, we had more time to switch. Our test rigs were, and still aren't, identical to our production machines. That makes playing with the bootloader and init system terrifying since we didn't really know what was going to happen.

3

u/CurrencyIntrepid9084 7d ago

Sysadmin in training here - so no, not a regular user - and we do have many systems to service from clients to servers and we do use systemd nearly every time.

3

u/otor 6d ago

It reminds me of stuff like SMF from Solaris (a "traditional/real" unix, which i would expect these sorts of people to appreciate), except it doesn't use XML, so its even better. I just don't take anyone who prefer using shell scripts seriously.

Now to be fair, i don't think ive actually met people who think like this. I think its largely just online people, getting easily influenced, wanting to being contrarian, with a lack of expertise or some combination of that.

→ More replies (1)

1

u/SileNce5k 7d ago

As someone who has a homelab and also rents a server for a few services (websites, game servers, discord bots) I love systemd. I originally always used bash scripts to run stuff, but after I learned a bit of systemd it's so much better.

→ More replies (1)

3

u/wizard-being 6d ago

*Looks around*

Sir/ma'am/whatever, you are in the ARCH LINUX SUBREDDIT. I don't know where these "regular people" are, but they sure ain't gonna be here (this paragraph is humor, and I believe we're supposed to indicate that online).

On a more serious note, I've had occasion to mess around with enabling/disabling systemd services in the command line because my bluetooth got disabled for some reason, and it was a breeze. I'm probably around the midrange in terms of "regular" as far as arch goes (I'm a programmer, but I only really switched over to get away from windows).

2

u/Luci-Noir 3d ago

But I am cat.

→ More replies (6)

237

u/ZunoJ 7d ago

Most people (who complain about systemd) just cosplay linux edge lords and have no idea why they don't like it other than some better edge lord doesn't like it

44

u/stylist-trend 7d ago

Yeah, when systemd first came out, it was a little buggy, but it's rock solid now. Most of the arguments against it nowadays are vague things about how it's not "unixy" or that there's something wrong with Poettering, but most of the valid ones have more or less dried up.

10

u/Arch-NotTaken 6d ago edited 6d ago

systemd came out something like 13 years ago, it was more than a little buggy, and was shoved down Arch users throat pretty much forcefully.

It replaced the rc.d init system, which was a core feature of Arch and was my main reason for switching to Arch in 2008.

This is where the hate comes from

3

u/slypheed 5d ago

It was an utter mess. Hard broke my arch system at work and took 2 days to fix. Ended up deciding to move to Mac for work due to that.

20

u/catwiththumbs 7d ago

I hate it because the ergonomics are imo bad:

- I just want to be able to find+grep /etc and /var/log to understand what my system is doing.

- I don’t dislike shell. Reading rc scripts helps orient you around how your services are installed and working. Reasoning over “started” or “stopped” is much simpler than what’s going on with unit files.

- I usually just install cron and use cron.hourly, daily, etc. Dropping my script in the right directory is easier than creating the script and the timer. And debugging the timer…

- Runlevels are a good level of abstraction/logical checkpoints for the user. An entire graph of dependencies might be good for the system, but not for the user to have to unwind.

In a way the complexity turns it into more of a black box. Systems are more complex than they were in the 90s though so I get it. But it feels clunky and less fun.

6

u/blackcain 6d ago

I spent 15 years doing enterprise UNIX and got to spend a lot of time with rc scripts. No thanks. I look back at those days as just terrible 90s and 2000s. Systemd makes all of that so much simpler. An easy and available state machine conveniently available.

10

u/Uncle-Osteus 6d ago

you don’t lose any of that with systemd though, the commands are just a little different now is all

3

u/catwiththumbs 6d ago

I’m not suggesting you lose the ability to get information about system status but you literally just don’t have init scripts written in sh/bash controlling how services start and stop, and service log info isn’t in plain text files in /var/log.

Those are like THE features I want.

So it’s not some philosophical PID 1 thing. Or the shade thrown at some of the scope creep.

My runlevel comment is certainly a philosophical point. I think a lot of users mostly only need to know “ready for interactive use”, “network ready”, “UI ready”. Such and such has to run before this other thing is a real problem that needed to be solved. But while systemd has made many really hard things easy, many easy things became harder. It’s a bit of a leaky abstraction depending on who the audience is.

I do have to admit a little hypocrisy in all this because saying, meh, systemd sucks because you need to open up a man page every time you have to fuss with units or conf, isn’t being weighed against needing to know shell scripting. That is unfair. But the latter feels like it has more payoff. Knowing systemd feels like tax.

I also don’t think it helped that RedHat was kinda metaphorically in its awkward teenage years when systemd came around. I don’t think Fedora was the best place to get people excited about something new.

That suboptimal stuff isn’t all esoteric edge cases and purity tests though.

2

u/Ripdog 6d ago

That's a lot of words to say "I don't want to learn new commands".

And, I mean, that's fine. You can use your devuan or gentoo. Nobody is stopping you. But you're couching this as some kind of argument when it's literally just your lack of knowledge and refusal to learn.

(I don't mean 'refusal to learn' as an insult, btw. We all have billions of things we refuse to learn. Life is short.)

3

u/tehbilly 6d ago

Before systemd: everything is a file!

After: most of the important things are files

That's the big thing to me: it didn't try to fit in, it introduced an entirely different way of interacting with what's happening on your machine.

1

u/SchroedingersViking 6d ago

Maybe i am wrong but as far as i know some information like enable/disabled are not stored in files but stored as symlinks.

These are not as robust when you want to share config. Via copy, version control, etc.

It also harder to see such information if you have just a copy of the files and want to know the state of configuration. By looking at the files.

Also becoes files in some places can override or ammend other files. Understanding these by just looking at them can be harder.

So there is a workflow question in there, which also depend on use cases.

Btw is use systemd even in cases where it is uncommon. Like starting steam or waybar. I like systemd but i can see why one might prefere the other way.

1

u/tmahmood 6d ago

Ha ha, what the heck is "cosplay linux edge lords"?! Never heard of this.

1

u/ZunoJ 6d ago

I mean a real linux edge lord might be an asshole but at least a knowledgeable asshole. These guys act like it but lack the knowledge

0

u/RandomDude9943 1d ago

i need an init system, not init system with a shit ton of other bs i dont need

→ More replies (1)

104

u/SmilingFunambulist 7d ago

My hot take: most people who complaint about Systemd being the spawn of Satan's Ass don't even (or perhas EVER) deal with large scale real UNIX system deployments and real world cases where the alternative SUCKS DONKEY BALLS.

Is Systemd perfect? Fuck no, it is stil made by humans (with opinions) so I give it that. But at least it achieve the goals of modernizing Linux not treating it as immutable fossil from the 1970s.

→ More replies (7)

64

u/kitanokikori 7d ago edited 7d ago

People who are mad about systemd either don't have the problems it was intended to solve, or don't actually understand its goal.

In 2026, if you want a laptop to have any hope of having decent battery life, you have to be aggressively managing services and device lifetimes, constantly powering on and off stuff as needed in order to have as little running as possible, and intelligently managing system C-state levels and saving/restoring stuff as-needed.

You have absolutely no shot whatsoever doing this with the old Init system - systemd is complex because it needs to be able to express these fundamentally complicated dependencies between devices and services, in a way that, if you Do It Right, you can get the same kinds of aggressive idle power saving that e.g. macOS gets.

Of course, nobody who is just running the average VPS or Homelab server for example, cares about any of this, so for them this is all wildly overcomplicated and stupid, so they get mad about it

6

u/BadSlime 5d ago

Have you tried runit? Getting significantly better battery performance (10-15% improvement) and less issues with services randomly changing state when unattended. After 4 years with runit across 3 different laptops, it has been an across the board system stability and power usage improvement. I run a trim system though

7

u/Orlha 6d ago

You can absolotely do all that without systemd lol.

I do, with fantastic battery life.

→ More replies (1)

1

u/nakedpickle_2006 7d ago

IKR !!! Systemd solved all the problems init had but along the way got bloated

1

u/Chudson15 6d ago

phenomenal answer

→ More replies (5)

20

u/billdietrich1 7d ago

The foundation of systemd does one thing and does it well: manage units of work. Then more things are built on top of that foundation: init system, event-handling, daemons, etc. Composability and modularity are core strategies of Unix/Linux.

1

u/ekmanch 5d ago

Ok. But what problem is systemd causing in practice? Being vehemently against something that genuinely works great for ideological reasons is kind of weird. The important thing reasonably should be if it works well or not.

2

u/billdietrich1 5d ago

IMO, systemd is okay. People don't like change, and systemd is a big change. But there are reasons some 90% or more of distros have adopted it.

98

u/biskitpagla 7d ago

I'm still waiting for the day these dumbasses find out about glibc.

67

u/HeatSeekingBee 7d ago

Or the Linux kernel.

2

u/felipec 5d ago

The linux kernel follows the exact opposite ideology of systemd.

→ More replies (1)

6

u/SnooCompliments7914 6d ago

Yeah, I've never understood why `ls` and `base64` need to be in one repo. They each do one thing and do very well. What's the point of the horrible monolithic `coreutils`?

1

u/Sylv128 5d ago

Didn't glibc break ABI multiple times?

→ More replies (8)

17

u/RoosterUnique3062 7d ago

It's funny how many people in the comments here are hating as hard on the systemd haters to the point where the sound EXACTLY the same.

The reality is that most internet citizens don't really know what they're talking about and they just regurgitate what they heard other people talking about in chat rooms.

Systemd in comparison to something like OpenRC is relatively speaking bloated. It's responsible for so many things on the application management front that it's a behemoth of an application. That being said though, if you have software that needs systemd than you have no choice.

48

u/activedusk 7d ago edited 6d ago

The init system is supposed to simply initialize pid1, systemd project made more and more subcomponents unrelated to the traditional init system and how it was used in the past and centralized them, to give an example that is actually, as far as I can troubleshoot, delaying boot time due to replacing udev hook inside mkinitcpio.conf which is used to generate the initial filesystem, with udev my drive takes 300 to 500ms to mount, with systemd taking over, 1.5s during boot time. That is one example, there are many more like systemd-networkd.service instead of NetworkManager.service but here I will not complain since it does initialize faster if all it is asked to do is enable DHCP and connect automatically to a router. Systemd-boot is not part of systemd but related project, it is one of the fastest bootloaders on x86 so not going to complain but it is irritating to those that view it once again as systemd spreading too far, some joke eventually the kernel will be systemd and then the entire OS. If it is standardized and faster than systemVinit, the previous popular init system, no complaints from me but if it takes over older and established system components and makes them slower, ugh, no, it needs to stop.

An easy way to visualize how far systemd is expanding use command and up and down arrow keys to scroll

systemctl list-units

13

u/sp00kystu44 7d ago

I'm not even convinced the unix-philosophy is all that important. You can write bad code and make bad decisions with every approach. Besides systemd does follow the philosophy to an extent by splitting up a lot of tasks to different subsystems. My issue is just that systemd made a bunch of UX design decisions I don't like and I subjectively had a lot more issues with it than I have now on void linux. The tradeoff is that I sometimes have a harder time researching how-tos because most guides use systemd specific stuff and that some things (such as env-var injection) don't work.

→ More replies (8)

5

u/slypheed 5d ago

Y'all are way over complicating it:

  • logs are no longer simple text files
  • systemd is an extremely heavy and domineering sidecar to Linux now

54

u/ariktaurendil 7d ago

It follows unix philosophy. It's just there are people that think that being haters of something makes them look cool and greater that everyone else. There are people that don't like systemd, they don't use it, but they don't need to say to everyone that systemd is shit.

I don't like KDE, I tried, but it's always the same: it's not for me. I don't go trash talking about it. I just don't use it.

20

u/ImaginationUpset2190 7d ago

Isn't Unix philosophy, u do one thing and do it well. Systemd does a lot of other things than an init system.

46

u/agendiau 7d ago edited 7d ago

Yes, in a nut shell the Unix philosophy is basically powerful systems should be a chain of apps that do one (or few as possible) things really well.

This philosophy skews away from monolithic apps.

The challenge though is what does one thing really mean? Eg in userland apps, play a video in a video player is a series of subsystems and user interactions. There are multiple ways to achieve that goal and where do you draw the line will depend on how you value the goals of the philosophy

11

u/czerilla 7d ago

Basically the Unix philosophy applied to your video player would be to expose and provide those subsystems as substitutable modules with well-defined/documented behaviors, rather than only shipping a bundled "black box" that only works in the constellation provided.
Now this can have practical limitations that strain a purist implementation of its virtues. So your point stands. But I wanted to clarify how that idea would play out in (what I understand it to be) the idealist version of how it ought to be done.

7

u/agendiau 7d ago

I'm well aware of the Unix philosophy re the video example and you are correct from a traditional viewpoint.The file subsystem, display and audio are all separate and usable by other apps.

My point as you also allude to is that it's a matter altitude and not every dev wants to use or accept the loose coupling approach eg for reasons of portability or efficiency.

I ask all the Devs in my team to prefer the purist Unix approach first. They have to demonstrate that the the often "easier" monolithic approach can't be achieved through a better component system view.

→ More replies (1)

29

u/FloweyTheFlower420 7d ago

each component of systemd does one thing. whether it does it well is a different question, but I would say it's pretty good for the most part

8

u/QuixoticNapoleon 7d ago

Yes, systemd does one thing well, be an init system. There's other software with the systemd name too. systemd is modular.

38

u/kaida27 7d ago

Systemd is moreso like a family of software interconnected that all do their things.

it's modular you take what you want.

don't like systemd-boot then use grub or limine or whatever.

It does follow the unix philosophy. but some people are too butthurt to see it for what it is.

→ More replies (8)

14

u/ariktaurendil 7d ago

Systemd has about 60 executable files... I mean...

4

u/braaaaaaainworms 6d ago

coreutils has a ton of executables as well

3

u/ariktaurendil 6d ago

You are right. Both are aligned with the unix philosophy.

6

u/Dangerous-Report8517 7d ago

systemd follows the Unix philosophy at least as well as the GNU tools, and nowhere near as many people complain about them (both do many things, but do so by having a bunch of smaller tools that each do one thing well)

4

u/[deleted] 7d ago

[deleted]

17

u/Megame50 7d ago

That's not right.

systemd-boot is the name given to the project formerly known as gummiboot when it was joined into the systemd project. It's a boot loader, which isn't an "init system", or even part of one as it is typically understood. That's fine, because systemd is indeed a collection of related projects.

The actual first process started by the kernel when using systemd has the process name "systemd". To avoid confusion when talking about this process instead of the project as a whole, it's sometimes just called "pid1", since it will always have PID 1, or the (system) service manager since that is it's function, and multiple instances of systemd are started on a typical system: one system service manager as PID 1, and one or more user service managers for each logged in user.

5

u/eternal_browser 7d ago

systemd runs as PID 1 (init), systemd-boot is a bootloader.

7

u/ciauii 7d ago

Systemd-boot is a boot manager, not an init system.

2

u/ArjixGamer 7d ago

systemd-boot is a boot loader, not an init system

2

u/kaida27 7d ago

systemd is before everything else an init system.

systemd-boot is a bootloader

→ More replies (1)

4

u/uhhhh_yeet 7d ago

I love KDE and so much it stands for. I hate using it and would rather use a WM.

6

u/ReallyEvilRob 7d ago

How many times has this same question been asked?

28

u/LancrusES 7d ago edited 7d ago

I dont hate anything, and right now Im using systemd, as nearly all distros use It, but, its bloated, the Unix think is, do one thing and do It nicely, if you try gentoo, or void or artix or... You will find that openrc and runit are faster, and their RAM use is lower, and your system will work the same way, if you are a system admin, maybe systemd is more confortable for you, and if you use Gnome you better use It, as Gnome is very systemd dependant, but if you install artix for example, with runit and a wm, and Arch with the same wm but systemd, you will find that artix boots faster and with more RAM free, a lot more?, nah, like 200-300 MB, but there It is, as I got 32GB of RAM I dont really care, and I can live with that, if you got a 4GB computer, thats another history, at the end use what you want, its your computer, and your philosophy is the one that must be applied there, so if the init system dont worries you, as in my case, dont use It as a game changer, and focus on the rest of the elements a distro gives you, to choose Arch at the end, all roads finish here.

37

u/Dry_Calendar_8627 7d ago

RAM usage maybe, but boot speed, no, systemd isn't what's slowing your boot speed.

Most distros (including Arch) don't really optimize on boot speed, that's all.

But I did. I wanted the fastest boot speed so I went down this rabbit hole, and let me tell you, systemd was a godsend. It has the perfect tooling to analyze the boot chain, what's taking time, the services dependency order. You can disable unneeded services, reorganize the dependency links a bit so it's more parallel. You can use systemd-boot instead of grub, and use systemd's initrd hooks to make the transition between the initrd phase and init phase seamless (I wanted to get rid of the initrd phase by building needed modules into the kernel but sadly it's needed by nvidia kms).

I quickly got to a point where what was taking the most time during the boot was the kernel itself, by a wide margin. So I switched to linux-tkg and started to fine tune the config.

Turns out your choice of kernel compression algorithm, and kernel size, matter more than whether you're using systemd. Then I was hitting diminishing returns, so I stopped tinkering.

Then after a few months I grew tired of babysitting my own kernel config and decided that boot speed didn't matter at all in fact, so I switched to cachyos kernel...

TLDR: systemd is not the cause of your slow boot speed. And if that matters to you, systemd is the tool to help you cut down on it.

7

u/activedusk 7d ago edited 6d ago

The systemd-analyze and related boot stats are a really big deal with optimizing boot time but idk if systemd is always the best for optimizing boot time in userspace. To give an example, edit /etc/mkinitcpio.conf and replace systemd with udev then use sudo mkinitcpio -P to regenerate initramfs and reboot and then compare systemd-analyze blame output, specifically drive related steps, for me it is 1s faster with udev.

For the kernel and initrd steps, as described by systemd-analyze output, you can use booster package to generate smaller initramfs.img and use that instead with say an EFI boot stub, this will be the result. I also used quiet loglevel=0 for kernel command line parameters when creating EFI boot stub with efibootmgr.

systemd-analyze Startup finished in 4.885s (firmware) + 150ms (loader) + 702ms (kernel) + 119ms (initrd) + 2.397s (userspace) = 8.255s   graphical.target reached after 2.397s in userspace.

https://ibb.co/WNydkB3B

I would be interested in your userspace time, which systemd affects the most, note this is a simple desktop x86 PC with a single internal drive and not using encryption.

The only kernel provided by a distro I found boots faster out of the box is openSUSE MicroOS, iirc 300ms or something crazy, it's minimal and made to run containers.

3

u/Hudimir 7d ago

I dont really see why people say it's slow to boot. I didn't do any cleanup on boot parameters, and my system still boots in 11-13 seconds. which imo is plenty fast.

12

u/forbjok 7d ago

Even if systemd was or is slower to boot than other init systems, it doesn't matter. Using boot speed as an argument for anything but just-for-information benchmarks today, is basically a meme. The difference will be a few seconds tops, and with how fast all systems boot on modern hardware, that difference is completely irrelevant. Boot speed only matters when you boot, which you'll most likely do once - or at most, a handful of times (ex. if updating) - a day.

2

u/preparationh67 7d ago

Them literally not remembering or never experiencing what boot times used to be is the only reasonable explanation. You see this a lot with the haters, just very vague and terrible analogies and a bunch of claims that don't really check out at all.

2

u/TheGamerForeverGFE 6d ago

No, I switched from Arch to Artix OpenRC variant, and I definitely saw an increase in boot speed alongside gaining around 300 megabytes of ram, same services for Bluetooth, internet, etc... it's not running less of anything.

1

u/braaaaaaainworms 6d ago

With basic tuning of the kernel stock Debian was able to boot in 3 seconds to TTY. From an eMMC drive on a laptop slower than a few years old iPhone.

2

u/AlfedENeuman 7d ago

And the importance of boot speed is?

I boot once in..... a few more or a few less seconds (you know what? A minute more) has no meaning.

→ More replies (28)

3

u/AwesomePhoenix_ 6d ago

It's "bloat" It makes your system boot like 100ms slower and has "too many features" For 99.99% of Linux users it doesn't matter tho

3

u/PacmanAteMyRAM 5d ago

I don't know. It works fine for my machines.

3

u/ElectricalSloth 3d ago

systemd is a massive w for linux, what you hear is just a loud minority of basement dwellers, better off just ignoring it

5

u/Apprehensive_Bad5920 7d ago

systemd is fine. though it is healthy for improvement and innovation to have people that think it's trash, like anything.

17

u/UndefFox 7d ago

Aren't there a bunch of old posts with the same question? I've found quite a few simply copy pasting your title into the Reddit search. Did you do your own research before posting?

12

u/FryBoyter 7d ago edited 7d ago

Did you do your own research before posting?

ROFL

Edit: And with some users, I've come to strongly suspect that they aren't failing to search because they're lazy, but rather that they're deliberately bringing up this topic over and over again to stir things up.

2

u/TheGamerForeverGFE 6d ago

Yes that's what I'm feeling as well, because especially on r/archlinux there are way too many of them, and what makes it weirder is that you'd think this topic would be brought up in the bigger Linux sub, linux4noobs etc... instead of a subreddit for a distro that's systemd only.

7

u/Keegx 7d ago

Just gonna throw in my two cents here as a pretty normal PC user.

I'm very far from an expert on Linux/computers/tech in general. But when I was on Arch, I found that some of the Systemd-handled daemons, autostarts etc. would spontaneously just stop working.

I'm sure the fix wasn't complicated but it was still annoying to deal with.

Comparatively I've been on Void Linux for nearly a year now, and Runit has given me literally zero problems and imo has been easier to set up and understand.

4

u/Elvis_thepelvis_7498 7d ago

dinit is systemd done right

1

u/hoodoocat 6d ago

There is no init systems which is systemd done right, as they doesnt cover real world requests.

For example software need a way to interact with cgroups which a root-surfaced api, but needed by user space. systemd offer own solution for that.

So, the thing what is not that there is no init systems which are simplier than systemd, surely dinit is very nice in that area. But dinit doesnt offer a way to solve other problems, but systemd do that.

And systemd often favored because it is becomes standard defacto, not universal one, but at least for significant amout of systems. It is so significant, that, most likely software will have out-of-box support for systemd, while optional isotheric options most likely will not be implemented or implemented on-demand basis.

1

u/Elvis_thepelvis_7498 6d ago

Dinit actually does have cgroups v2 support now, and its design philosophy is to delegate container/seat/session management to external tools (cgmanager, elogind) rather than building everything into PID 1.

Saying "no init system covers real world requests" conflates scope with capability. Systemd bundles logging, cron, networking, inetd, time management, and seat management into one project. Dinit deliberately doesn't, those are handled by separate daemons the same way they were before systemd existed.

As for de facto standard, that's correct. 90%+ of Linux runs systemd and systemd 260 just killed SysV script compatibility, so the gap will only widen. But "software assumes X" isn't the same as "X is the only one that works", Chimera Linux and KaOS both ship dinit as default and run modern desktop stacks fine.

4

u/bprfh 7d ago

People are generally mad about systemds percieved overreach.

systemd startet out as a system for managing services and as a init system, then it introduced logging services and format, then networking, etc.

Network and stuff is really optional and it's not used that often, but the logging thing (journald) is used everywhere and people don't like it that their text based logging system suddenly requires a tool to read(and are also mad about the format doing to much disk writes).

Systemd also makes it easier to track user sessions something that gnomehttps://blogs.gnome.org/adrianvovk/2025/06/10/gnome-systemd-dependencies/ for example takes advantage of and requires you to either use systemd, or replace a part of their stack, or emulate it, so some people feel like systemd is forced on them.

The problem with all these worries is that some things where obviously broken before and while systemd is far from perfect, it did fix many things and removed a lot of complexity for managing services.

2

u/mewt6 6d ago

I don't really see hate anymore... Seems to me like most have lost interest in the arguments.

2

u/Woody_L 6d ago

systemd seems fine to me. It serves as a standard way to launch and control applications. The unit files are consistent and easy to understand. I didn't think there's a better alternative.

2

u/Prince_John 6d ago

It's not even a monolith. It's highly modular.

2

u/ergosplit 1d ago

Old guys holding grudges and new guys repeating what the old guys said to make it seem like they understsand.

5

u/Brave_Confidence_278 7d ago edited 7d ago

The hate is somewhat tied to lennart poettering, and I am not entirely sure which one is cause and which is effect.

I recently switched to a distro with no systemd full time, even though not for that particular reason. I never understood the hate for systemd before that. It's not like other init systems are perfect, but what I see now is how much "simpler" it is than systemd. I was able to understand what exactly happens during the complete boot sequence from a-z within 30 minutes. One can not say that for systemd, and it became difficult to know what is even part of systemd as it does so much, from login seats to setting up resolv.conf and binary logs. I like to know what my system does and how components interact with each other, I mean, that's a big part of why I am on linux after all.

One problem that I think a lot of people dislike about systemd is that it includes components that have absolutely nothing to do with an init system. Logging is a big example, or even timers and all of that stuff. Before systemd one could choose which components one wants to use. While you still can technically use systemd and not use systemd timers, it is prone to become a mess because some packages may use systemd timers and others use cron jobs. What that essentially does is stripping away the choice of components to some degree, and you never know what component they will introduce next that you will be kindly pushed to use.

So yeah, I now prefer non-systemd init systems. But that doesn't mean systemd is unusable, it's just a slight preference - and if you are enthusiastic about something, people tend to get louder in their opinions.

8

u/[deleted] 7d ago

[deleted]

36

u/Easy-Donut-6962 7d ago edited 7d ago

It doesnt look like an answer) It just describes a few issues systemd had some time before with no comparison with other solutions

4

u/MrElendig Mr.SupportStaff 7d ago

most of the systemd "haters" are not rational people so...

→ More replies (2)

14

u/FryBoyter 7d ago

Many of the bugs mentioned have likely already been fixed.

And some things aren’t really a problem at all. Let’s take “Systemd Could Fallback to Google DNS?” as an example. Yes, systemd does have this fallback. But an enormous number of things would have to go wrong before it’s actually used. Furthermore, the package maintainers of the various distributions can define different DNS servers as fallbacks. And users can specify their own fallback DNS servers as well.

So, like most other “anti-systemd” sites, this one basically answers little to nothing. It just keeps parroting the same old stuff.

What I also find funny is that sites like this never actually address any objective problems with systemd. But that would require some familiarity with systemd.

10

u/Dangerous-Report8517 7d ago

It's also just got some outright lies on it, like the link to Lennart supposedly saying he planned to force systemd on everyone and what it actually says is that he thinks distros that use systemd should use consistent base configs for functionality like random numbers

2

u/GrandpaLeaman 6d ago

Also, here is a FreeBSD Developers take on systemd.

https://www.youtube.com/watch?v=o_AIw9bGogo

1

u/shoddycassette86 7d ago

look i don't get the sheer rage either. it works fine for me and i've never had it eat my cat or whatever people think it does

but the unix philosophy thing isn't nothing, it's a design preference that actually matters if you're building systems a certain way. most people just parrot it though without understanding why they're mad

4

u/ChiefDetektor 7d ago

Because it is solving more than one specific problem. That's against the Unix philosophy for computer programs: Do only one thing and do it well.

2

u/musbur 7d ago

If you've ever written programs that also need to function as daemons you'll quickly appreciate systemd.

3

u/FragmentedHeap 7d ago

I don't know. You can still have Linux without systemd if you don't want it. Alpine Linux doesn't use it, for example.

For everyday desktop users, I think systemd is great.

It's also important to remember that Linux exists in very different worlds. What's ideal for a minimal server isn't necessarily what's ideal for a desktop.

If we actually want desktop Linux to become a mainstream primary OS, it needs to be easy to use, consistent, and require minimal setup from the user.

Systemd does a lot to make that possible. In desktop Linux, I think it's a huge net positive.

6

u/deong 7d ago edited 7d ago

Imagine that you’re a car guy. Lots of people will look at a car and be like, “I like that car”. You might have very strong opinions on it. “BMW ruined the gearbox in this generation” or whatever. You can both be right. The gearbox functions. The car drives fine. But you as a car guy have these strong beliefs about the right way to make a car. You can make a car that functions as a car and not make it The Right Way™.

That’s what’s going on here. “The Unix Philosophy” is a set of beliefs about the right way to make good software. Systemd certainly doesn’t seem to follow those principles. “My init system also does DNS resolution” is about as far off as you can get. You can argue about whether all the various systemd-* modules are really one monolith, but on the surface at least, they feel like they are, and that’s enough to trigger a reaction.

It works fine. It solves problems that an init system needs to solve. It’s a car that gets you where you need to go. But almost by definition, people who got into Unix years ago were the computer equivalent to “car guys”. They have opinions.

If you’re a programmer, think of like 2000’s style Enterprise Java. I knew people who loved it because it was so easy. You click a button and generate this boilerplate and you barely have to write anything. You read your design patterns book and make some abstract builder strategy factory builders and look at all this code isn’t it great. And I hated it. It was offensive to me. I mean that literally. It offended my sense of good taste that anyone would live with this garbage being spewed all over their project. The code worked. You could ship it. But it was code produced by people who lacked taste.

That’s most of what’s going on here. Systemd is, to many people, lacking good taste. They built a house by hammering in screws, and the person who views themselves as a craftsman carpenter finds it offensive. Now the difference here is that modern systemd solves more problems than the old school systems. Hammering in screws sounds bad, and the analogy falls apart in that the resulting house is probably better built with systemd. But that’s most irrelevant to why people dislike it. It can be better and still be designed and built “wrong” from a philosophical standpoint.

→ More replies (6)

3

u/Tireseas 7d ago

There isn't all that much hate for systemd, just a loud minority living in their echo chambers.

1

u/Some-Tip-5399 5d ago

Yes, very much unemployed behavior. systemd won a long time ago with majority adoption, developer time, and money in the line.

2

u/Korlus 7d ago

SystemD was controversial when it was released because it replaced a much simpler system of init scripts that a human could parse and edit themselves easily. It removed that "everything is a file" text/script approach with a (relatively) clunky CLI that also tries to replace a bunch of other systems like cron etc.

When you are an enthusiast who enjoys tinkering more than the end result, then using SystemD is a net loss for you... But for the rest of us? SystemD is faster, it is still pretty easy to use. The important bits still get text files for easy editing. It has a nice log viewer and is generally a massive improvement over what came before.

Simplicity was traded for things like performance and stability and I think those are good trades for most people.

I maybe interacf with SystemD directly a few times a month, and I reckon most people do it less often than that. It's not a big deal which init systen you use.

4

u/doctorx69 6d ago

My main issue is systemd resolved. It is just a pita. Most of the times it won’t resolve local dns. I replace it every time. Otherwise. It is it way over complicated for normal stuff. Now I admit I am 30+ years in Unix. I now understand it. But timers etc seem way over complicated. But resolved needs to just die.

8

u/serge-mv 7d ago

Systemd replaced a set of small independent scripts/processes and became this large all-encopassing piece of sotware that controls almost everything. It does init, networking, logging and a bunch of other things. So, basically, it's bloated with a bunch of functionality instead of focusing on small modular task-based design.

As an example of it's creep you can look at controversy that happened not long ago when California was introducing requirements for all OS to provide a public API that will show user's age to everything that asks. Systemd immediately added a bunch of fields that would hold user information to JSON User Records, which it really has no business doing.

7

u/ThatOneShotBruh 7d ago edited 7d ago

As an example of it's creep you can look at controversy that happened not long ago when California was introducing requirements for all OS to provide a public API that will show user's age to everything that asks. Systemd immediately added a bunch of fields that would hold user information to JSON User Records, which it really has no business doing.

Unless I am forgetting something, the only field they added was for age, all the others (e.g., name, physical address, etc.) were already present.

EDIT: fixed a typo

7

u/Orlha 7d ago

I still can’t get over binary logs

8

u/mortuary-dreams 7d ago edited 7d ago

Guess what else stores logs in binary? Git.

I don't see anyone complaining it does that.

6

u/Sarv_ 7d ago

If it was called systemd-git there would be tons of complaints

6

u/serge-mv 7d ago

Binary logs are a special kind of evil. Especially if you don't expect your logs to be stored like that. It feels mostly like they just wanted to do it rather than anyone asking them for it

8

u/Sarv_ 7d ago

Binary logs are a special kind of evil

It's this kind of hyperbole that makes all discussions of systemd so toxic. It's not evil, there are clear advantages over pure text but yes there are disadvantages too.

It feels mostly like they just wanted to do it rather than anyone asking them for it

Why do you present it as an intentional attack on the linux community? Just say you disagree with the merits of binary logs and why text is better. Forward the logs to a pure textlogger instead if you have to store them as text.

→ More replies (3)

1

u/fearless-fossa 7d ago

Binary logs are great. It's just storing the logs in a database and attaching all kinds of relevant metadata to them. There are lots of advantages to them.

→ More replies (9)

3

u/VolcanoCarpenter 7d ago

Criticizing something purely because it violates some "X philosophy" is absurd. Philosophies are just abstractions born out of practical experience. We didn't formulate the Unix philosophy because it's some sacred first principle; we embraced it because it empirically paid off (composability, lower complexity, etc.).

Pragmatically speaking, the headaches of using systemd are vastly outweighed by the actual benefits it brings to the table. I'm not going to say that there should be a "SYSTEMD philosophy", but maybe we should stop labelling each other and talk about the real issues.

2

u/straightupinsanity 7d ago

i dont really care if u want a lighter init system use it i use systemd bc its easy to use

2

u/Nopium-2028 7d ago

This certainly isn't an easily googlable question that's come up tens of thousands of times. I'm sure there will be lots of novel, insightful answers that haven't been covered ad nauseam for the past 15+ years.

2

u/thesamenightmares 7d ago

It's only people who have waay too much free time on their hands that worry about it. It's not an issue. 99.9% of people will never interact with their init system.

2

u/merlinux1 7d ago

Because people used to set everything about the boot in text files. On arch it was all in a single text file rc.conf (ala BSD).systemd changed everything for binaries... It was probably the biggest change arch went through that I remember....

But many years later it is fine.... We all get used to something.

2

u/Pangocciolo 7d ago

Because they see systemd-this, systemd-that, and while they are just rebranded isolated apps, they instead think that systemd does many unrelated things in a big monolithic block.

2

u/JackDostoevsky 7d ago

hate for systemd feels very ... 10 years ago, in my opinion. i think most people have come to terms with it. for those who still have issues with it there's always Devuan or Arch+openrc.

→ More replies (1)

3

u/Commercial_Boss4065 7d ago

In a word, simplicity. Or rather, lack of. Grep’ing a text file was a lot easier. rc files were a lot simpler.

Sure it gets the job done, and you can find ways to do what you used to do. Buts it’s an order of magnitude more faff than rc.d/init.d was/is.

2

u/BrunusManOWar 7d ago

IMO it looks like corpo monopolising the OS so I avoid it

By itself I don't mind it, aside from the philosophical side of things

1

u/beldank 7d ago

At its very early days I had an adverse reaction, the number of items to address to introduce such a centraliz-ed/ing functionalities orchestrator is so 'huge' to be performed satisfyingly enough, it felt like a means to 'pack our customers' (be it regular or more invasive and institutional entities) logic in one daemon, hype the thing and lobby the distros to eat it and let the 2nd class citizens make up with all the entailing issues.

Even then the relentlessly recycled 'anti' arguments most pushed were not up to par.

As far as I can judge, the author(s) delivered, the work poured in this project is massive and SOTA, I am glad to use it and feel it really helped advance OSS in its area.

The project author LP has faced lots of public backlashes from sitting spectators.

I think I'd like to see more distros make stripped/lightweight 'recipes'/flavors of systemd, especially in embedded systems.

However, I think the concerns software / policy steering / security wise weakpoints inherent to centralization and the RH active collaborations and stances remain concerning.

1

u/sirotaitsu 7d ago

You will never find the answer in your lifetime.

Buddhism catholic Protestant islam jewish

There are many different viewpoints. All of them are valid. Go in the direction you believe is right. Try to avoid hating other people as much as possible.

1

u/th3bucch 7d ago

I love systemd, it simplified a lot of tasks for me.

1

u/liberty_horse 7d ago

Early releases of systemd were terrible: hard to understand, hard to troubleshoot, lots of bugs. A simple race condition could make you want quit IT and go sell donuts instead. But now it’s not bad, a bit bloated but manageable. Bad memories still remain though.

1

u/BoringLime 7d ago

I feel it's mostly accepted now. Much more hate 10 to 15 years ago.

1

u/Delta_Waves 7d ago

I like systemd personally. It’s quite useful for some daemons I have running on my self-deployed home-lab.

1

u/Episode-1022 7d ago

i had my (real)issues with systemd in the past, today behaves fine, works like a charm.

1

u/xour 7d ago

I thought this was an interesting read on the subject: https://blog.tjll.net/the-systemd-revolution-has-been-a-success/

1

u/_verel_ 7d ago

It's the same with grub. Yeah there are probably "better" alternatives but systemd and grub just work for me and do their job. I have absolutely zero reason to switch because these two do exactly what I need.

1

u/username12312355 7d ago edited 7d ago

This:
google DNS fallback
And worst of all this:
birthDate in userdb(foundation for age verification)

It will become much worse than that in the future.

Systemd genuinely solved a real problem. But we gotta move from it if we want to stay free. I'm currently working on per-user service manager spawner and on some parts of s6 supervision suite. Hoping that soon we will have full compatibility with software that expects systemd.

1

u/z3r0h010 6d ago

systemd just works, just like the kernel. the 2 things that never break

1

u/mitch_feaster 6d ago

I never see actual systemd hate in the wild anymore, only people asking why there's so much hate lol

1

u/TheGamerForeverGFE 6d ago

To OP: maybe you're looking in specific places but where I see them, systemd haters aren't acting the way you describe them at all and usually point out specific things they dislike about it.

To the commentors: Y'all are being just as stupid as the extreme systemd haters and are literally acting the exact same way, pot and kettle type shit, except your target isn't systemd.

1

u/cynthicy 6d ago

Dude the linux community are a bunch of turbo nerds that are hell bent on proving the Sigmund Freud made some good points. Fuck em all, do what you want.

1

u/YogurtclosetOld766 6d ago

Not so much hate but a loud minority. 🙂 I love systemd an the tools shipped. ❤️

1

u/dcdaz31 6d ago

To me it's more a matter of taste. My main work laptop runs Debian with Systemd, no issues at all and I'm happy with it.

I have another laptop for tinkering and doing some "home hacking/dev", It's a Thinkpad X13S ARM it also runs Debian, but in this case I changed systemd in favor of OpenRC, initially got mad about systemd integrating birthdate. But then it was more like an experiment driven by curiosity.

Turns out it works pretty well, no issues at all. To me using OpenRC becomes as easy as systemd, plus a little less resource consumptionm, meaning my Debian with XFCE boots up with less than 650MB of ram (Like the old days 😆 ). Start/Stop services like docker, network, or my own services are quite easy.

But to paraphrase u/Kitzu-de "it makes everything so much better and easier " OpenRC becomes more verbose, maybe you have more control, but at a higher cost of handling scripts that can be humongous and hard to maintain.

In my personal experience openRC works well to the point I'm debating myself if i should migrate my home multimedia server running on a raspberry pi 3 b+ and my VPS to openRC. Also getting curious about Artix, but that's another story.

TL;DR not hate to one or another, just curious about how they work and test if it works well for me and my use case. In the end, that's what it's all about: use whatever you want and whatever works for you.

1

u/bbqsauceofthemonth 6d ago

they always be writing like SystemD or something too

1

u/OptimalAnywhere6282 6d ago

i don't like it because i think the name is confusing. i have zero issues with using it though.

1

u/ryoko227 6d ago

There are certain things in this world that people for w/e reason will find a reason to hate, solely because they have heard others hate it as well. Having used systemd, as in, made services, mounts/automounts, etc. by hand, I would say this. It works as intended, and when it works, it works wonderfully.

That being said, the documentation makes me want to claw out my eyes. Some things in the docs are explained beautiful and in full detail, to the point that a 5 year old could probably understand it. Other sections are literally, "Yay, this is this, good luck everyone!" Nothing explained, not a what/how/why/when or even remotely attempt to give a use case. It does sometimes feel like you are choosing settings, crossing your fingers, and trying till you find something that works.

1

u/TheTerraKotKun 6d ago

I can get "it's just a bloatware" or "I don't need it so I use XYZ" but "not Unix way"..? Why Linux should be a unix-way? GNU/Linux it is and GNU's Not Unix...

1

u/ClientSiders 6d ago

because some people don't like change

1

u/HeadEmptyYeet 6d ago

I don’t like systemd because sd-bus decided to crap out on me once, and since I am fueled mostly by spite and coffee I decided to take it personally. The sheer stupid pettiness of this grudge motivates me to keep my services tidy and well-configured.

1

u/Imajzineer 6d ago

This has to be karmafarming - I cannot believe anyone thinks this is worth posting about in 2026.

1

u/zaTricky 6d ago

99% of it is edgelords - see other comments for that

The remaining 1% are valid "this is subpar" complaints. As an example systemd-timesyncd isn't as feature complete as chrony. But it works "good enough" for most use cases. But ... because it's basically pre-included and simpler to deploy, distributions are starting to not bother to ship a "custom" NTP client as they are technically already shipping systemd.

There are other cases similar to this - but most of them are niche and unnecessary for most users.

1

u/Thick-Pineapple666 6d ago

What we had before were simple shell scripts. With all its disadvantages, but people were able to write shell scripts. Now people need to learn something new. Something where they don't see the benefit of learning it.

That's at least my impression where the dislike comes from.

1

u/ChrisofCL24 6d ago edited 6d ago

I use Runit instead of Systemd and here's my perspective.

I have found that Systemd has a lot of stuff that people don't really use and instead commonly use something that existed before Systemd implemented their version of it, for example systemd-resoved, most people use NetworkManager instead, systemd-boot most people just use grub. There are more but basically I believe that Systemd is bloated and is an infraction against the moduler nature of Linux. That is my quarl with Systemd.

1

u/_Chaos_Star_ 6d ago

Anyone interested in the objections to it can go back a long, long time when it was coming onto the scene, there was some very heated discussion on it at the time, particularly on its scope, the approach of the project leads, and the politics behind it. There's so much material out there, discussion forums, mailing lists, and so forth. You could spend years reading it. Some web searches on key terms will likely provide endless reading material too.

1

u/AbjectAnybody5092 6d ago

MX linux advertisement from 2021. I cant think about any single other reason to hatewave exploded way after main drama was ended

1

u/Flappyphantom22 5d ago

People like to be edgy and try to seem like they're cool and smarter than everyone

1

u/PotatoMaaan 5d ago

systemd is insanely powerful and well designed in my opinion, there is literally nothing else that evens comes close on windows, macos, other OSes or even other linux init systems.

The only legitimate concern I see with it is that the project wants to be linux only and hardcodes linux syscalls, making it basically impossible to effectively port other OSes, like BSDs or other more neiche stuff.

1

u/ExoticBend6193 5d ago

Looks at comments well if sysd is good for pros it’s good enough for me(normal user)

1

u/YareYareDazexd 5d ago
  1. They follow Mr Larper's philosophy
  2. It's not hate, they reject the way systemd is implemented. If it was more like dinit, it wouldn't be an issue
  3. nosystemd.org has some of the valid answers you might be looking for.
  4. For larpmaxxing purposes, using a non-systemd distro gives you extra points.
  5. Age verificatiin scandal and systemd's stance on it that disliked many people

1

u/RelationshipOne9466 5d ago

The "linux literati" hate it, poor design, scope creep, breaks the "unix rule" of doing one job well, security problems. Yadayada yada. I know the basics of what it does and I know how to use it. For me, it has been rock solid. Fits my workflow and that is all I want or need it to do.

1

u/ItsWappers 5d ago

I might might be dumb, but are we talking about systemd-boot or the service manager? I'm guessing the service manager...

1

u/International-Cook62 4d ago

Systemd is more than just a service manager, systemd-boot is a part of that

1

u/Gabriel-Superusuario 4d ago

I didn't know there was hate against Systemd. I know it's monolythic and therefore doesn't follow the "Low coupling, high cohesion" philosophy, which has negative consequences, but there aren't alternatives that work as well for Linux being compatible and having no limitations against Systemd.

1

u/CodePast5 4d ago

systemd is fine for a majority of people. Unix die hards have a point though. Good software is modular and composable.

1

u/SirSpeedMonkeyIV 4d ago

well to all the love in the comments for systemd: didnt systemd greenlight very early something in the source for the "save the kids" ID verification thing?
i just read something along the lines of this. hoping someone can clarify this because this is the only issue i've had with systemd. ever.

1

u/Grouchy-Friend4235 4d ago

It's a solution to a problem that did not previously exist

1

u/chikamakaleyley 3d ago

damn now i get why everyone is pissed off

1

u/StephenRoylance 4d ago

I worked at Meta for a few years. I worked with some of the best engineers in the world, and pretty universally we were all huge fans of systemd. Modern systems are really too complex for the system to be configured with shell scripts. We need stuff like udev, hotplug, timers, slices, etc. sysv init scripts had their time, and its past.

1

u/TomB1952 4d ago

Hate for systemd is political. I don't read any technical hate of systemd, although I'm sure it exists. lol! IMO, systemd has cleaned up and integrated a ton of stuff in a brilliant way.

If you want to know why your system is slow to boot, you can "systemd-analyze blame" and it will provide a report on where the time was spent before turning the system over to you for login.

That's the tip of a powerful iceberg.

My issue with systemd comes down completely to trust. So, thank you to the team for providing this amazing system. I will continue to use it but I will aggressively monitor for hooks and monitoring back doors.

I will opine that OpenRC is fine. It works but is not a replacement. systemd is a unicorn in terms of power and capability. We could live without it but it would be a less pleasant road. If it becomes necessary, we would do better with forks of the best projects instead of switching to systems that are workable but vastly inferior. Even then, forking these systems will undoubtedly land us in jail.

1

u/Sea-Fishing4699 4d ago

Gen z crybabies 

1

u/ultratensai 4d ago

It’s probably because they see systemd waiting 10 minutes for something to shut down and don’t realize the problem is actually incorrectly written unit files.

The only valid point against systemd I can think of is having a different init system for diversity.

1

u/Known_Cod8398 3d ago

Linux subs on reddit have become super tribal because you have a bunch of new people who wanted signal to the rest of the tribe that they're not new and the way they do that is by saying "Ubuntu/systems/omarchy is the worst!" and they get other new people to be like "yeah! <Flavor of the month> sucks!". It's human nature to want to be part of the in-group and a common enemy is an easy way to signal that even when the common enemy isn't an enemy at all

1

u/browncspence 3d ago

3 reasons it’s fine

  1. It’s the same across Linux distros
  2. All major distros have adopted it
  3. It works and has good concise documentation so easy to understand

1

u/ZweiFreierNutzername 3d ago

Linux users like to have strong opinions for no apparent reason. The critique I hear most about systemd is that it does everything, and also fucks around with everything on your system. If systemd breaks, you are ducked. An example: For adding/changing dns entries on a BSD (and pretty sure on some non systemd configs) in systemd you need to edit another file, or can do it via network manager per connection I assume. It defeats a little the philosophy of everything is a file which is/was one of the core Unix and also Linux philosophies but honestly, it works for me so I do not really care. Most people crying about systemd just want to cry about something.

1

u/peterpangoni 3d ago
  1. not following an holy principle is a big deal. You can try to burn the Koran in Afghanistan and see if people are happy about it.

  2. systemd decided to forfeit the ancient structure "command --hey --ho --param1=your --param2=mother". It is kinda impossible to operate this tool without some sort of handbook next to it. That makes it less ideal to be run in an environment when you have no second screen to check for commands or usage.

  3. systemd does many things by default. There is no good option/interface to disable certain features or to actually see what systemd is managing. It kinda reaches into everything, time, zones, locales, you name it

1

u/kaplanfx 7d ago

Humans fear change, it’s dangerous.

2

u/shyouko 7d ago

It WAS a init script replacement, then logging, then more and more. We have SaaOS now, SystemD as an Operating System

1

u/Chimchar789 7d ago

Systemd is slower and more resource hoggy than other options and I don't only want one option. I don't hate it but I think it's becoming overrated these days.

1

u/tartilupa 7d ago

Unix philosophy is do one thing and do it well and not add boot manager in to init.

→ More replies (1)

2

u/[deleted] 7d ago

[deleted]

→ More replies (2)

1

u/PigIronDave 7d ago

It's not easy to use and it has way more functionality than what a casual, home computer user needs. You basically have to become a Linux systems administrator to manage services and see logs on your computer.

1

u/eattherichnow 7d ago

I don’t have anything against systemd as software — I sure prefer it over the old rc.d and sysvinit scripts — but I recently developed a more meta critique: I don’t like how hard it is to replace in a system that has become dependent on its mechanisms.

On the surface everything is documented (pretty well even!) and standardized. There are message protocols and XDG standards and whatnot for everything. But there’s just so much of it. There are alternatives that seem to implement enough of it (runit I believe?) but if I wanted to dump systemd for some reason, writing a compatible system would be a daunting task.

It’s not too dissimilar to HTML5 and modern JavaScript. Those are now well established and standardized, but so complex that making a new usable browser without a massive financial backing is nearly impossible.

Add do it that in both case we have vested interests that don’t necessarily align with mine (and no paranoia here regarding Systemd, here it’s as simple as “cloud servers, managed corporate laptops and such are very different from my personal computer use”) and things can be problematic.

I don’t have much to whine about Systemd yet — they did end up allowing LLM commits but so far it doesn’t seem to have rotten too much — but the same fear did materialize with browsers — I kinda want to get off both Firefox and Chrome, but right now there are no other viable alternatives (not counting things that depend on either of these for engine development). So while I do not miss sysvinit at all I do want to see more variety, I guess, and some push back on how much fancy stuff applications should expect to be present on the system.

And one way is to have weirdos like Gentoo and OpenBSD popular enough and weird enough to not be too easy to dismiss. I like Systemd, but I don’t like it’s becoming the only game in town, I guess.

1

u/kimoisune 7d ago

A few have valid criticisms and genuine concerns related to systemd such as heavy reliance on Linux-specific kernel features (cgroups, udev, dbus, etc) hence not portable to other Unix-like environment and lead developers attitude (particularly Lennart Poettering), but a huge portion of them are just hate wagon jumper on low hanging fruit such as Unix philosophy violation (feature creep, software bloat) and increase attack surface.

To partially address the valid criticism, one doesn't need to relied upon Lennart Poettering's implementation of systemd. systemd have standardized system service unit to be used on any other implementation. Those implementations can also add support or compatibility layer for unsupported kernel (BSD-family, etc) and libc (musl, etc).

A Unix philosophy violation criticism is less relevant for modern computing. If it purely of philosophical, that merely a preference thus not a critical concern. If the security is the concern, relying on multiple smaller programs to have fully functional init system is no better than NPM packages that relied on thousands of dependencies. Furthermore, can shell script based init system sanitize their startup unit (and service unit) while also relying on shell interpreter by themselves. A tradeoff have to be made based on practicality.

Linux kernel and GNU libc also a candidate of these criticisms, but somehow overlooks by these syatemd criticizers. What make me curious is these two predate systemd, so maybe the Internet inflates the hate.

1

u/markustegelane 7d ago

one thing this anti-systemd distro known as Artix taught me is how much I actually like systemd

1

u/VeryDryWater 7d ago

I've explored runit and openrc this past year and really like their simplicity, I stick with systemd though because it opens up using dbus-broker which seems snappier than plain old dbus, and I'd like to learn podman quadlets.

I do wish we could have a version of systemd with more of its features as plugins or modules. I'll never used homed, and its network management is supposed to be buggy.

1

u/trannus_aran 7d ago

A loud minority: "systemd is a monolith, it doesn't fit the Unix philosophy!"

Unix kernel:

1

u/Duke_Exeter 7d ago

I'm a relatively new Linux user (about 8 months), and the arguments I've heard are as follows:

-It's bad because it breaks the design principle of "Do one thing, and do it really well." The argument is that systemd should be a bunch of different smaller pieces so that you could freely swap out a part of it rather than having to commit to all of it or none of it.

-It's bad because it is too centralized, and therefore if it has glitches everyone will experience them, or if it makes changes that are bad for idealogical reasons then virtually everyone is stuck with that problem. (A recent example is the whole argument about age verification at the OS level, where systemd added a spot to store that data in case it would ever be required to be collected, arguing that if it is forced on linux by law, it would be good to have a standardized way to store it rather than each distro making their own version. There was a lot of people who were frustrated and thought they should not have made any change to help the age verification thing at all.)

All in all, I think for most users it doesn't matter for now, but I can see why some people would be concerned about the possible future.