Crea sito

ICT Officine Informatiche Roma

ICT SERVICES ROMA

Controllare se un servizio è in esecuzione

Script che controlla se un determinato servizio (in questo caso apache) è in esecuzione e se non lo è lo riavvia.

Controllare se un servizio è in esecuzione

Script che controlla se un determinato servizio (in questo caso apache) è in esecuzione e se non lo è lo riavvia.

#!/bin/bash

if $(ps ax | grep apache2 | grep -v grep > /dev/null ) ;
then
        exit ;
else
        /etc/init.d/apache2 restart ;
fi

Un altro modo per fare la stessa cosa:

#!/bin/bash

TAG="MOTION"

CONTROL=$(ps ax | grep motion | grep -v grep | awk '{print $5}')

sleep 5 ;

if [ -n "$CONTROL" ]
then
        echo "Motion già in esecuzione" ;
        exit 0 ;
else
        echo "Motion non attivo, RIAVVIO motion!"
        motion ;
        logger riavvio servizio non attivo -t $TAG ;
        exit 1 ;
fi

Questo script prende l’output opportunamente filtrato da grep e se la stringa NON è vuota (-n “$CONTROL”) esce perché motion è già in esecuzione, altrimenti riavvia il servizio e riporta con logger un eventuale avvio.

ATTENZIONE: il nome dello script non deve contenere “traccia” del nome del servizio da cercare, grep altrimenti troverà come servizio corrispondente lo stesso script e non funzionerà come ci si aspetterebbe: in questo caso ad esempio sarebbe un errore nominarlo “riavvio_motion”.

Translate »
×

Benvenuto !

Fai clic su uno dei nostri specialisti elencati di seguito per avviare una chat di supporto su WhatsApp o inviaci un'e-mail a helpdesk [email protected]

You are Wellcome !

Click one of our helpdesk specialist below to start a chat on WhatsApp or send us an email to [email protected]

 

× HELPDESK