On 06/12/2013 8:42, David Holland wrote:
There are a number of recent attempts to rearrange the way services and daemons get started (and restarted) -- there's launchd, upstart, at least one other whose name I'm forgetting, and perhaps others. So far, none of these has seemed to me like a very good idea; they all seem hastily conceived (without e.g. an understanding of how init/getty/login traditionally works) and some of them just don't seem very ... unixish.
http://en.wikipedia.org/wiki/OpenRCdh is right on one part, it was written without any knowledge of init/getty/login. But then, that wasn't it's job. It's job was to start & stop things in a dependent order. The fact it dealt with them was just an aside. I would imagine others have taken the same approach.
I think if we want to improve the state of the art in this regard the way to do it is to look at what a "service" is (in the sense of things like "service nfsd start", not /etc/services) and try to come up with some abstractions that make sense and aren't oversimplified or crippled.
This is a very important point, and most init systems I've seen get it wrong.
Oh so wrong.I'm not going to say too much on this topic other than that I've written one, patched two others and tinkered with a forth. OpenRC can run quite nicely on NetBSD ... but I don't use it anymore. That doesn't stop the existing dev's emailing me with problems every once in a while ;)
NetBSD's rc.d system works very nicely for me. Could I improve it? Sure! Do I have the time, probably not. The only thing that it needs from my pov is a dependency graph, so you can see the dependency ordering and needs - it took my far to long how to work out how to get syslogd to start before dhcpcd when I had to debug a boot time only issue.
Thanks Roy