[HN Gopher] Systemd, 10 years later: a historical and technical ...
___________________________________________________________________
Systemd, 10 years later: a historical and technical retrospective
(2020)
Author : fanf2
Score : 53 points
Date : 2024-08-06 20:42 UTC (2 hours ago)
(HTM) web link (blog.darknedgy.net)
(TXT) w3m dump (blog.darknedgy.net)
| dijit wrote:
| SSL. certificate expired
| throwway120385 wrote:
| TLS still works though.
| abnry wrote:
| I still haven't fully grasped the Systemd drama, or systemd for
| that matter, but boy do I love it. I enjoy how Linux has those
| turf wars nobody outside of it knows about.
| jandrese wrote:
| SystemD is great when it works, which is most of the time. But
| when it breaks or you have to do something that SystemD doesn't
| support it becomes an enormous pain in the ass. It's like being
| back in Windows land again.
|
| Some DBus message is not appearing and it stalls out your boot
| process, finding where it was supposed to come from and why it
| didn't appear is a nightmare. If you want to use a different
| daemon than the one SystemD provides for some service it will
| fight you every step of the way, sometimes even undoing
| whatever you had to do to make the process work in a random
| update. As someone who experiments with weird networking stuff
| from time to time I've been kicked in the nuts by
| NetworkManager on several occasions.
| tuatoru wrote:
| Yah, Networkmanager is a rootkit.
| sophacles wrote:
| > As someone who experiments with weird networking stuff from
| time to time I've been kicked in the nuts by NetworkManager
| on several occasions.
|
| nit: NetworkManager is not the one provided by systemd in the
| first place - that's systemd-networkd.
|
| That aside I do wierd networking stuff for a living and
| here's how I see the available tooling:
|
| * NetworkManager - great for a laptop where you're moving
| between networks and don't need anything too fancy.
|
| * systemd-networkd - great for servers and other mostly
| static networking setups, even weird ones.
|
| * If you're doing anything weird dynamically (e.g.
| experimenting) - disable the above or move the interfaces you
| are experimenting on to a fresh netns and do everything by
| hand with the ip command (and maybe udchpc or dhclient if you
| need a dhcp client, but be aware of how to write your own
| callback scripts for how to handle various associated
| events).
| creshal wrote:
| Now for the weird part: Redhat wrote both NM and sd-nd, and
| decided what servers _really_ need is NM by default, and
| getting a server to actually use sd-nd is like pulling
| teeth on RHEL. Completely baffling.
| sophacles wrote:
| I don't know why Redhat would do that, but I've never
| used RHEL - I quit the redhat and derivatives in the 90's
| due to rpm hell, and never looked back.
| ChocolateGod wrote:
| NetworkManager can read old style sysconfig network
| configuration, which is still used to this very day even
| if Red Hat wishes you wouldn't, and you really shouldn't.
| gsich wrote:
| systemd-networkd also has the big advantage in using the
| same config for all distributions. No weird Debian or
| Redhat config pain.
| rlpb wrote:
| I'm not keen on the network config being scattered across
| a dozen tiny files. It makes it hard to see what's going
| on, or to spot a configuration error.
| pantalaimon wrote:
| And that's why Canonical came up with Netplan because
| otherwise things would get boring.
| pdw wrote:
| I know this is a completely unimportant tangent. But I'm
| always amused that systemd skeptics insist on the "SystemD"
| spelling. Where does that come from? I never see anybody talk
| about NtpD, InetD or VsftpD. But somehow systemd needs to be
| SystemD. As I said, amusing.
| Enginerrrd wrote:
| Here's one for you: I can't remember the exact details, but I
| was trying to get do something with a samba share folder via
| systemd unit file and the way systemd handles the escape
| characters used by the samba client was not compatible for
| windows network shares that used spaces in the name.
| hi-v-rocknroll wrote:
| Because it completely violates the UNIX philosophy and mission
| creeps into taking over essentially every part of the system.
| It was shoved down the throats of every user because the major
| distros kowtowed to a FOSS diva with a spotty track record,
| creating a monoculture built on awfulness and bloat.
| 7bit wrote:
| I appreciated it. I fucking hated all these init scripts and
| find it muuuuuch easier to get services running under
| systemd. I don't care about philosophy when it gets in my way
| of managing systems.
| palata wrote:
| Had it not been for the philosophy, Linux would not have
| been a thing. If you don't care about philosophy, consider
| going to Windows?
| delta_p_delta_x wrote:
| Hot take: the 'UNIX philosophy' is stuck in the 1970s. It was
| the only practical compromise when computers were constrained
| to kilobytes of memory (at best) and a megabyte of storage
| (at best).
| SahAssar wrote:
| https://www.youtube.com/watch?v=o_AIw9bGogo (The Tragedy of
| systemd) is an interesting talk on this topic from the view of
| someone (Benno Rice) in BSD land. Highly recommended.
|
| EDIT: this is mentioned in the article, thanks koalacola
| koalacola wrote:
| It's all in the article.
| SahAssar wrote:
| Ah, sorry. I commented on the topic before reading the
| article.
| pxc wrote:
| I'll second this recommendation! Benno Rice is an insightful,
| energetic, witty, and just plain enjoyable tech speaker. 'What
| UNIX Cost Us'[1] is another favorite of mine that the audience
| on this post might enjoy:
| https://www.youtube.com/watch?v=9-IWMbJXoLM
| Xenoamorphous wrote:
| Apologies for the off topic comment but found very funny that
| the autogenerated subtitles for the video had "eunuchs" for
| UNIX.
| FelipeCortez wrote:
| not exactly a coincidence, as the name is meant to imply that
| it is a castrated version of Multics :)
| walterbell wrote:
| https://archive.is/FMfu4
|
| _> Perhaps as BPF subsumes Linux into making it a managed-
| runtime hybrid kernel with subsystems becoming increasingly
| componentized and instrumented (with early signs in the proposal
| to add Linux Security Module hooks to BPF programs), as pidfd
| /process descriptors allow for reliable supervision to be
| distributed across self-contained processes, as the native Linux
| mount API becomes more event-driven on its own, and as a
| generation of Rust fanatics in their undying religious zeal
| insist that all men are obligated to offer sacrifices to the
| borrow checker, a new shift may emerge where once again, the init
| system is made to cease mattering._
|
| Alpine, Devuan, Gentoo and other devs have kept init choice
| available.
| DiabloD3 wrote:
| *Debian.
|
| apt-get install sysvinit-core
| lmm wrote:
| What good is being able to install sysvinit if it doesn't run
| your services? Debian killed first-class sysvinit, the
| downgrading of Debian/kFreeBSD is proof enough.
|
| (And more importantly it killed all other well-behaved
| cooperative init options - this isn't about systemd vs
| sysvinit, it's about systemd vs standards-based init systems
| that play nice)
| capitainenemo wrote:
| Devuan is still an option.
| walterbell wrote:
| Including Devuan on Arm!
| ChocolateGod wrote:
| > Alpine, Devuan, Gentoo and other devs have kept init choice
| available.
|
| Nothing stopped anyone, including yourself, from modifying or
| forking a distro like Fedora to make it support non-systemd,
| it's just you can't expect others to do it for you.
| walterbell wrote:
| Fedora/RH is maintained by a company with > 100 billion
| market cap.
|
| Forked by Oracle, Rocky Linux and AlmaLinux, for reasons
| other than systemd.
| renewiltord wrote:
| Unlucky. Posted to HN the day after SSL expired. You need to turn
| on certbot-auto to renew your LE cert.
|
| I recall the initial systemd stuff that was constantly posted
| etc. but now I routinely write unit files and it's really nice.
| I'm sure the constraints that systemd introduced were a pain in
| the ass for maintainers but for a user it's been tremendous.
| Admittedly, some times I just a service unit instead of a mount
| unit for FUSE and so on, and I still have trouble with `After`
| and `Before` and `Wants` but overall I rather like it.
|
| Now I have to go check what happened about PulseAudio which is
| the other Poettering work that everyone and their uncle hated (or
| maybe it was just Ulrich Drepper who hated systemd). It's funny
| to me that in the end, my teenage self was some sort of
| equivalent of a k-pop stan: applying Con Kolivas's scheduler
| patches, and choosing Poettering over Drepper or whatever. And
| now all that memory has faded but the names.
| thequux wrote:
| Pulse was only really janky in the early years; by 2010 it was
| as solid as anything else in tech. Even then, it was absolutely
| an improvement over the previous system which either needed
| manual configuration per program to choose whether to use ALSA,
| OSS, EsoundD, or Arts with success of portaudio and other sound
| systems too keep things interesting. Even if you did get things
| working, I distinctly recall having to restart Firefox in order
| to play music because Firefox had the only available connection
| to the sound device.
| DaSHacka wrote:
| > Pulse was only really janky in the early years; by 2010 it
| was as solid as anything else in tech.
|
| Then why was PipeWire introduced as a PulseAudio replacement,
| and why have so many people sung its praises?
|
| I think more people continued to have issues with Pulse for
| far longer than you realize.
| cyberax wrote:
| > Unlucky. Posted to HN the day after SSL expired. You need to
| turn on certbot-auto to renew your LE cert.
|
| Systemd can do that for you, too!
| Spivak wrote:
| Reading the full history of all the attempts at modernizing sysv
| I really do think Lennart deserves all the credit for making a
| car when everyone else made faster horses. It's the true hacker
| spirit to look at problems with dizzying complexity and say, "eh
| give me a weekend." systemd really is a jewel of open source that
| did so many things right from the beginning that by the time it
| was done it made other hard problems outside of service
| management tractable.
| 7bit wrote:
| Man I love systemd. Never has it been easier for me to setup a
| binary as a service. I dread the memories of customizing or
| writing init scripts and dependencies.
|
| I don't get all the hate, that primarily argues about the
| philosophy of Linux, when the philosophy made everything just
| harder..but I guess some people just want to suffer for their
| believes, mich like some Catholics
| palata wrote:
| I hate that "modern" developers think Linux == Ubuntu and
| write software that only supports Ubuntu. Same thing for
| systemd.
|
| "But it is just harder to learn how to write proper software
| that would work on a machine slightly different than my
| own"...
| floam wrote:
| Maybe someone can fix this to point to
| http://blog.darknedgy.net/technology/2020/05/02/0/
| ChrisArchitect wrote:
| You mean 14 years later?
|
| (2020)
|
| Discussion then: https://news.ycombinator.com/item?id=23204666
| zamadatix wrote:
| Seems to have been (2020)'d the same instant you posted :).
| Dwedit wrote:
| Trying to decide what the worst "systemd" story was... "systemd-
| tmpfiles --purge" deleting your /home directory was pretty bad.
| cyberax wrote:
| Systemd itself is a fine idea, but its maintainers and governance
| are not.
|
| They screwed up the libsystemd first by bringing tons of
| dependencies (including libxz), and then inventing a braindead
| delayed loading mechanism. That required adding custom ELF
| sections. It's funny that they used "macOS does this!" as an
| argument for the delayed loading, when in reality macOS removed
| that functionality about a decade ago (for being braindead).
|
| While all they needed to do was simply split libsystemd into two
| libraries.
___________________________________________________________________
(page generated 2024-08-06 23:00 UTC)