Usate il programma procautostart (si dice "Prok-Auto-Start" o Process AutoStart) per monitorare e automaticamente reinizializzare qualsiasi processo Unix/Linux che non sia terminato. Questo piccolo programma è molto utile ed è comparabile con grandi prodotti commerciali i quali costano circa 80.000 $. Procautostart può essere utilizzato per controllare le seguenti applicazioni:
Il listato del programma è dato nella sezione seguente di questo documento.
procautostart -n < delay_seconds > -c "< command_line >" nohup &
In questo modo si inizializza il processo Unix procautostart ed anche il processo command_line. Il processo procautostart reinizializzerà il processo command_line se è terminato. L'opzione -n indica ogni quanti secondi procautostart deve verificare l'esecuzione di command_line. È consigliabile avviare procautostart come un processo in background, non interrotto dalla sessione di lavoro, utilizzando "nohup &". Vedere "man nohup".
Procautostart è stato scritto in "C" così che sia molto veloce ed efficiente, proprio perché il programma è chiamato ogni n secondi. Le risorse totali utilizzate da procautostart sono molto ridotte ed insignificanti inoltre il programma è piccolo e altamente ottimizzato con l'opzione di compilazione -o3.
Per esempio:
procautostart -n 12 -c "monitor_test -d $HOME -a dummy_arg " nohup &
Il programma fornirà in uscita un file di log nella sottodirectory "mon" creata con l'ora e la data in cui il processo è terminato e ripartito. Questi file forniscono informazioni su quanto spesso i processi sono terminati.
Potete anche utilizzare l'opzione "-m" per microsecondi o "-o" per nanosecondi, editando il codice sorgente di procautostart.cpp e non commentando le linee appropriate.