Come tenere un processo attivo

A volte accade che usando determinati software essi si chiudano inaspettatamente per svariati motivi, a me succedeva con alcuni client torrent o comunque con software in via di sviluppo...
Sicuramente vi e' gia' successo! Bene, lo risolviamo con uno script, prima di tutto apriamo un terminale e digitiamo ("nprog" e' il nome del programma, diamo un bel nome allo script cosi da avere ordine sulla nostra installazione):

sudo touch /etc/init.d/keep-nprog-up
sudo gedit /etc/init.d/keep-nprog-up

Lo posizioniamo sotto /etc/init.d su Debian e derivate se usate Redhat o derivate mettiamolo sotto /etc/rc.d

Ora scriviamo lo script:

#!/bin/bash
istanza=`ps ax | grep "nprog" | grep -v grep |wc -1`
if [ $istanza == 0 ]; then
while true; do nprog --opzioni di avvio ; done
else
exit 1
fi

Ora salviamo e rendiamo eseguibile lo script con un:

sudo chmod +x /etc/init.d/keep-nprog-up

Ora -se non è un programma da associare ad un'utenza in modalità grafica- per renderlo attivo fino all'avvio del sys eseguiamo:

sudo update-rc.d keep-nprog-up defaults 10 50

10 e 50 sono la priorita' del nostro script all'avvio e allo spegnimento!
Se invece parliamo di un'applicazione da usare in modalità grafica possiamo benissimo posizionarla sulla home e inserirla su sessioni (gnome) oppure su autostart (kde)

P.S. usare ps ax | grep "processo" | grep -v grep è una buona tecnica per evitare falsi positivi, perchè il secondo grep elimina la riga in cui compare grep che cerca il nome del processo!