shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Script para verificar processo (novato)


From: Julio C. Neves
Subject: Re: [shell-script] Script para verificar processo (novato)
Date: Thu, 21 Jun 2007 10:11:35 -0300

Fala Viktor,
o corpo principal do seu programa, eu trocaria por:

#Imprime a data da tela
/bin/date
for Tudo in "squid squid" "syslogd syslog" "pppoe adsl-init" "mysqld mysql"
"named named" "httpd httpd"  "crond crond"
do
    read servico sdaemon <<< "$tudo"
    verifica || echo "Não foi possível recuperar serviço $servico"
done

E a rotina verifica, eu faria da seguinte forma:

function verifica () {
/sbin/pidof $servico > /dev/null && {
    echo "Programa rodando" $servico
    return 0
    }
/usr/bin/tput bold
echo "--------------------------------------------------
Programa não está rodando $servico
-----> tentando levantar o serviço"
/sbin/service $sdaemon stop
/sbin/service $sdaemon start || return 1
echo "--------------------------------------------------"
/usr/bin/tput sgr0
}
Em 20/06/07, Viktor Mota <address@hidden> escreveu:
>
>   Olá SlaYeR,
>
> Em quarta-feira, 20 de junho de 2007, 18:35:06, você escreveu:
>
> >
> estou com um problema em que o squid cai quase sempre
> quero saber como fazer um script pra verificar se ele está no ar
> pra se nao estiver, fazer ele voltar
> sei que pra verificaçao eh o comando ps.. seria algo assim
>
> ps aux | grep squid
> se nao existir
> squid -D
>
> alguem pode me ajudar?
>
> Dia desses tava com problema parecido... mas era algo maior e nao
> destinado ao Squid...
>
> Bom ai vai a solucao que montei com ajuda de outros ilustres membros da
> lista!
>
> Qq coisa manda pergunta que tento responder (se eu souber)!
>
> Abracos,
> Viktor Mota
>
> #!/bin/bash
> # Script: religa.sh
> # Data: 13/05/07
> # Ultima modificacao: 19/05/07
> #
> # Objetivo:
> # Testar os daemons para ver se estao rodando, caso negativo liga-os!
>
> # Limpar a tela
> clear
>
> #servicos: squid syslogd pppoe mysqld named httpd crond sshd qmaild
>
> #----------------------------------------------------------
> # A funcao VERIFICA resolve o problema dos lacos e diminuiu a
> # programacao, permitindo uma manutencao mais efetiva.
>
> function verifica () {
> /sbin/pidof $servico > /dev/null
> if [ $? -eq 0 ]
> then
> echo "Programa rodando" $servico
> else
> /usr/bin/tput bold
> echo "--------------------------------------------------"
> echo "Programa não está rodando" $servico
> echo "-----> tentando levantar o serviço"
> /sbin/service $sdaemon stop
> /sbin/service $sdaemon start
> echo "--------------------------------------------------"
> /usr/bin/tput sgr0
> fi
> }
> #----------------------------------------------------------
>
> #Imprime a data da tela
> /bin/date
>
> #----------------------------------------------------------
> #Testando o servico: SQUID
> servico=squid
> sdaemon=squid
> verifica
> #----------------------------------------------------------
>
> #----------------------------------------------------------
> #Testando o servico: SYSLOGD
> servico=syslogd
> sdaemon=syslog
> verifica
> #----------------------------------------------------------
>
> #----------------------------------------------------------
> #Testando o servico: PPPOE
> servico=pppoe
> sdaemon=adsl-init
> verifica
> #----------------------------------------------------------
>
> #----------------------------------------------------------
> #Testando o servico: MYSQLD
> servico=mysqld
> sdaemon=mysql
> verifica
> #----------------------------------------------------------
>
> #----------------------------------------------------------
> #Testando o servico: NAMED
> servico=named
> sdaemon=named
> verifica
> #----------------------------------------------------------
>
> #----------------------------------------------------------
> #Testando o servico: HTTPD
> servico=httpd
> sdaemon=httpd
> verifica
> #----------------------------------------------------------
>
> #----------------------------------------------------------
> #Testando o servico: CROND
> servico=crond
> sdaemon=crond
> verifica
> #----------------------------------------------------------
>
> exit 0
>
> --
> Sds,
> Viktor Mota
> address@hidden <viktor_mota%40yahoo.com.br>
> "Sob a democracia, um partido devota suas principais energias à tentativa
> de provar que o outro partido é incompetente para governar - e ambos
> conseguem e ambos estão certos." [H. L. Mencken]
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
Abraços,
Julio
http://www.julioneves.com - Um livro sobre Bash completo e on-line
:wq


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]