Se o seu sistema tiver o Upstart , você poderá criar um events arquivo para o seu script / comando e este may faz o que você quer (se não agora então possivelmente em uma versão futura usando recursos planejados ).
Aqui estão algumas informações da página events(5)
man:
-
Início manual:
start on <event>
Describes on what condition to start this job. Without this section, the job can only be manually started with the initctl(8) command. -
Respawn:
respawn
This sets the daemon, service, and respawn flags for the job. The respawn flag means that the process will be restarted when it ends -
Limite de Respawn:
respawn limit [count [timeout]]
This configures respawn limits. Respawn limits only apply if the respawn flag is set for the job; setting a limit does not automatically set respawning capability. If the process is respawned more than count times within an interval of timeout seconds, the job will be stopped automatically, and not restarted. The limit defaults to 10 times within 5 seconds.
Veja Primeiros passos .