I learned systemd first so its comfy 🤷♀️
@pewgar_seemsimandroid systemd has a lot of really good things…
But it’s too complex for init process and even too complex for service manager. Many solib dependencies causes long start, big memory footprint and possibe security issues. Many things might be implemented in some separate services, running with restricted permissions and optionally disabled.
initng was very similar to systemd, but was very simple and very much faster{insert IBM conspiracy here}
The Nazis will overtake us, one red hat at a time
Anyone got a good tutorial/guide fir SystemD?
Figure I may as well try to wrap my head around it if it’s supposedly going to murder me in my sleep or whatever.
SystemD works great, but the corporations and politics behind it will ruin Linux if they fully take over. They are already optimizing heavily for IoT just because IBM is heavily focused on IoT
IBM is heavily focused on IoT
Oh no, IBM wants to put a System/390 in every lightbulb!
I’m pretty sure IBM hasn’t focussed on IoT in a long time
(In the sense that I used to work there and know they’ve both reduced investment in, and fully removed, some parts of their portfolio regarding IoT)
Just search IBM IoT and look at IBM acquisitions in the last decade.
Everyone “used to work for that company” on the internet. And even if you used to work there it doesn’t mean you know anything about their business. IBM is more of a Holding now. Like Volkswagen. Just because someone works at audi it doesn’t mean they know anything about Lamborghini.
https://unixdigest.com/articles/the-real-motivation-behind-systemd.html
I’m well aware of IBM IoT and their acquisitions, but I’m also aware that most of that stuff happened around 2016-2018, and since then that part of the business has been shrunk down and sold off.
Believe what you want. I did work in IBM IoT, but what do I know ¯\_(ツ)_/¯
If you read your own article, you’ll also notice that it doesn’t mention IoT even once. It talks about embedded use cases, which is not the same as IoT. Are you sure you’re not just throwing together unrelated topics?
Try to pass init=<path to any other init system> and you’ll see reduced RAM usage. Systemd is bloated.
Hell, pass
init=/bin/yes
and you’ll see even more greatly reduced RAM usage!❯ ps aux | grep /usr/lib/sys | awk '{print $6}' | sed 's/$/+/' | tr -d '\n' | sed 's/+$/\n/' | bc 266516
So that’s 260 MiB of RSS (assuming no shared libs which is certainly false) for:
- Daemon manager
- Syslog daemon
- DNS daemon (which I need and would have to replace with dnsmasq if it did not exist)
- udev daemon
- network daemon
- login daemon
- VM daemon (ever hear of the principle of least privilege?)
- user daemon manager (I STG anyone who writes a user daemon by doing
nohup &
needs to be fired into the sun.pkill
is not the tool I should have to use to manage my user’s daemons)
For comparison the web page I’m writing this on uses 117 MiB, about half. I’ll very gladly make the tradeoff of two sh.itjust.works tabs for one systemd suite. Or did you send that comment using
curl
because web browsers are bloated?For another comparison 200 MiB of RAM is less than two dollars at current prices. I don’t value my time so low that I’ll avoid spending two bucks by spend hours debugging whatever bash scripting spaghetti hell other init systems cling onto to avoid “bloat”. I’ve done it, don’t miss it.
I’m using Eternity for Lemmy stuff on phone and Lemmy web under Brave.
I’ve used both runnit and systemD and I prefer systemD. Nothing against runnit and I love Void Linux.
Well, I think that if declarative configuration is what you’re looking for, the GNU Guix distro with its GNU Shepherd init system might be a more pertinent solution than SystemD
Hell yea +1 for shepherd.
Declarativity on steroids.
Systemd is pretty cool honestly
Enjoy your botnet.
Can you elaborate? Are there a lot of security holes in systemd? (Genuine question)
I’m pretty sure their arguments boil down to “big company bad” as systemd is developed by Red Hat. Putting a single entity’s products in charge of several basic functions of the computer (like booting, init, daemons, networking) is seen as a bad idea, especially Red Hat which disgraced itself by making the RHEL source code available only to customers (which does not violate the license), but so far I don’t know of any solid evidence of security holes caused by either incompetence or malice.
You had me at “declarative”.
Would you elaborate? Is systemd config not declarative?
It is. The cracker in the second panel lists several benefits of systemd, including declarative config.
They’re saying it is, and they like it because it is.
Its a meme phrase.
Ahh thanks, my English is not so sharp.
Systemd-boot and the service files and timers are pretty neat. Works fine as an init too I guess
Anything that lets me avoid the aberration that is Grub is great.
Those are the features I’m most interested in. Do you have a tutorial / resource you can recommend?
The man pages are, as with most Linux, technically sufficient. Just very hard to digest if I don’t have four hours of interrupted time.
Aren’t all configs declarative?
some other init systems just use scripts for config, meaning you can just do whatever
Configs can do whatever too.
a config file can do only what the program that reads it allows. if the program that reads the file is just bash…
My thoughts on systemd:
it makes my computer start. that’s pretty neat I think
I like the way I can make the timeout 0 so I don’t even need to think about it doing its job :)
It’s one of the init systems of all time.
I don’t hate systemd, but I prefer OpenRC and usually use it on my Debian systems. My preference is purely vibes based though, and I think most of the anti-systemd arguments in common usage are a bit silly.
My biggest problem with systemd is that Red Hat has basically used it to push their-way-or-the-highway on many Linux distros. That said, in many situations systemd is better than what came before. Except systemd-networkd. It’s a PITA as far as I’m concerned.
I see why that may not be an ideal position in an ideological sense, where every distro uses the same thing, but i see it the other way around: it’s a way to finally attempt to standardize Linux desktops. Having a standard desktop is crucial for mainstream adoption, because developers won’t bother supporting 4837 different combinations of software. This is the reason I am really excited for the future with flatpak, xdg-portals, systemd, pipewire, Wayland etc etc. This way the distro is no longer the platform, it’s the distro agnostic software stack that becomes the target platform. For example there’s no longer a need to support KDE’s file picker, and gnome’s file picker and xfce’s, you can just call the portal and it will (should) display a file picker. And if the user doesn’t have a supported environment (which the vast majority don’t) then the burden is on them for being different I guess :p
I like the standardisation of things. I don’t like that it’s glomming over everything to push Red Hat’s way of doing it and slow-walking proposals from other groups.
The Nix package manager uses systemd for instatiating services for its packages, so you can switch between any setup with one command. Nix will stop and start all the units that were changed. While it’s a Nix feature, systemd is doing all the heavy lifting
systemd-network is great on servers. I use it on every machine that isn’t on wifi
What are your issues with networkd?
I find it hard to deal with. I generally end up writing a new plan file and just rendering that to networkd.
deleted by creator