Re:Uselessd: A Stripped Down Version of Systemd
by chubot on Sunday September 21, 2014 @04:31PM
(#8348180)
I think pretty much everyone agrees that SysV init scripts are not the path forward. For example, Debian switched to systemd, and I'm pretty sure that the options were Upstart or systemd -- nobody really wanted to stay with init scripts.
Main problems as I understand them:
- Duplication. init scripts don't even restart daemons if they crash; or if they do you have to duplicate the restart logic in every init script. IMO distros generally do a poor job with their init scripts. They are heavily duplicated and thu inconsistent.
- Dynamic configuration. The runlevel thing is not expressive enough for dynamic desktop and mobile systems where devices come and go. Service dependency metadata is more expressive and natural. This was a main design goal of Upstart.
- Speed. Computers and devices do more now. systemd socket activation is actually a fantastic design IMO (even though I don't like other things about systemd). This lets you parallelize service startup to a much greater extent. Apple's launchd and Solaris SMF did similar things at around the same time.
In the 2000's, all Unix vendors independently decided that init needs to be overhauled, so the problems being solved are real.
Main problems as I understand them:
- Duplication. init scripts don't even restart daemons if they crash; or if they do you have to duplicate the restart logic in every init script. IMO distros generally do a poor job with their init scripts. They are heavily duplicated and thu inconsistent.
- Dynamic configuration. The runlevel thing is not expressive enough for dynamic desktop and mobile systems where devices come and go. Service dependency metadata is more expressive and natural. This was a main design goal of Upstart.
- Speed. Computers and devices do more now. systemd socket activation is actually a fantastic design IMO (even though I don't like other things about systemd). This lets you parallelize service startup to a much greater extent. Apple's launchd and Solaris SMF did similar things at around the same time.
In the 2000's, all Unix vendors independently decided that init needs to be overhauled, so the problems being solved are real.
More here: http://0pointer.de/blog/projects/why.html