Several options here. Just skip to the last paragraph if you want one recommendation instead of reading about the others too!
Just restarting on reboot is easy: add it to /etc/rc.local
which Debian based distros (and many others) run after everything in the other startup scripts by default. If god
doesn't drop into the background itself you might need to att & to the ned of the command like so:
god -c config &
The above will not restart the process when it is killed though. You could write a script the infinite loops but that is messy and will cause problems when you really want it killed.
You could also create your own init script, modelled on those in /etc/init.d
(and linked into /etc/rc.*
' which will give you a more complete solution as you will have facility to stop/start the service when you need to, though this will not automatically start the service for you without some extra scripting on your part.
You could add it to your /etc/inittab
, then init
will manage the process for you, starting it on boot and restarting it if it dies. It will even stop restarting it if it dies to often in a short space of time. This is still not perfect though.
I think the generally recommended approach for what you have described is daemontools
(http://en.wikipedia.org/wiki/Daemontools) which also supports restarting the service if it dies. This is a little more work here than using an entry in /etc/initab
but you will end up with a much cleaner end product that should do everything you asked in your question. daemontools
should be found in the repositories of just about any Linux distribution.