John Vandenberg schrieb:
We should have a per-user initialisation script that are all run during startup by rc.local.
You can get the same result using the @boot trigger in cron. In reality, though, this often fails, because home dirs may bit yet be mounted (or may have failed to mount) when this is run.
[[init]] is the original program given this task, and is still often used for this purpose. The wiki page lists other tools that have been written to help with this.
Init can be used to automatically relaunch programs that died, or that failed to start during boot? How?
svscan from [[daemontools]] is a good one.
supervise from daemontools seems to be the closer match. It seems to provide the functionality I was looking for, however, it appears to require a specific setup, specifically, one directory per service, with a ./run script in it. That's a bit inconvenient.
The closest match yet was start-stop-daemon, which Multichil suggested on IRC. That does pretty much the same thing as phoenix does, with a heap more options. I wish I had found it earlier :) Oh well, reinventing wheels is educational.
In any case, I don't care much which tools you use -- of you have bots that should be "always up", please use supervise run it from cron via start-stop-daemon or phoenix, so it gets (re)launched automatically.
-- daniel