Hacker News new | ask | show | jobs
by astrodust 4574 days ago
What else would you wish for? A registry that can get randomly corrupted, complete with nonsensical keys?

It's baffling, but there's reasoning. systemd is actually pretty slick at the core. A lot of the complexity comes from how flexible it is.

1 comments

What else would you wish for? A registry that can get randomly corrupted, complete with nonsensical keys?

That makes no sense. We had a perfectly working init called System V init. That's an alternative here, you may be looking at the wrong operating system.

A lot of the complexity comes from how flexible it is.

I think the complexity comes from trying to do too much at once. It's an init, but also cron. It's still an init, but also inetd. But it is still init, yet also acpid. Although it is in fact, still init, it's also atd.

And all of its functionality is available as a DBUS API. The only users are developers writing programs, not anyone banging their keyboards at the commandline prompt. That flies into the face of everything that made GNU/Linux great. Dbus is the death of GNU as we know it. The *sh oneliner that uses pipes and plain works is much better than the far more efficient C (or programming language du jour) program, even if it's only 10 lines of code.

System V init was decent enough for the time, but today it's relatively garbage compared to the alternatives.

Services die? Oh well, I guess they'll just stay dead. At least systemd has a wrapper that restarts them.

Also the "write a shell script with magical comments in it and lots of low-level bash" is not an elegant solution to any problem.

Fedora's been pretty good about supporting legacy sysvinit style scripts and there will always be a way to use them.

System V init could restart a service, that's how you got to log in after logging out. Even so, you actually need init to restart your important service process that should never die in the first place? Now that's just sloppy ;)
> Services die? Oh well, I guess they'll just stay dead. At least systemd has a wrapper that restarts them.

If services dies, there is a problem that is still going to exist after restarting.

I've had named blow out and it doesn't get restarted, it just stays dead. Rebooting the server is a heavy handed fix.

systemd will kick it back into gear if it drops.

Use nsd and/or unbound, they're more robust and faster than bind.
Good to know, hadn't really had a chance to explore those yet but will.

No software is entirely bug-free, so I do like having them relaunch on failure rather than stay dead.