What do other init systems do that systemd doesn’t?
It might have had a controversial history, but it’s here to stay. Just deal with it.
What do other init systems do that systemd doesn’t?
It might have had a controversial history, but it’s here to stay. Just deal with it.
Skip an opaque spaghetti-code declarative-to-imperative compilation step that I have to debug at 3am.
If they're script based, they allow lower level troubleshooting and modification without having to recompile.
systemd is written in a language that is easier than shell to get right, and it's capable of things very few script-based init systems are capable of, so in practice it's very rare that the code of the init system itself needs to be debugged. It's basically rock solid compared to sysv-rc.
You might regard C as easier than shell to get right (that's debateable), but systemd has many many more lines of source code than sysvinit. Good luck debugging it at source code level on a remote system if that "very rare" event occurs.
Going binary is like going back to Windows. If systemd was how Ubuntu worked 15 years ago, it's likely I wouldn't have seen the advantage and wouldn't have bothered switching.