(ubuntu) How to kill a respawn service
I like to respawn a service when the service goes down. I have added it to inittab however I cannot kill it when i need to.
Is there away i can respawn a service however be able to kill it manually when i need to.
thanks in advance
Solution 1:
Ubuntu has switched to Upstart for its init
daemon, so the best way would be to make an Upstart job file in /etc/init/
. Here's an example:
description "My important service"
start on filesystem or runlevel [2345]
stop on runlevel [!2345]
respawn
exec /usr/bin/mydaemon --some-args
If this file is saved as /etc/init/myjob.conf
, it will create a job that starts at boot, respawns when it dies, and can be manually stopped (as root) with stop myjob
, service myjob stop
, or initctl stop myjob
.
Solution 2:
Non-Upstart systems
Old-school use of /etc/inittab
. http://unixhelp.ed.ac.uk/CGI/man-cgi?inittab+5
The basic format is
<uniqueid>:<runlevel>:<action>:<command>
Upstart systems
Modern use of .conf
files in /etc/init/
: http://linux.die.net/man/5/init
The inittab
method from above will still work.