Ativar serviço que está parado
Publicado por Marcos Junior (última atualização em 20/11/2018)
[ Hits: 3.073 ]
Homepage: stroncry.com.br
Me deparei com um problema onde um serviço parava e tinha de ser iniciado manualmente. Criei um shell script para verificar a quantidade desse serviço executando e caso fosse menor que 1, ativar novamente.
Citarei o exemplo do serviço de vpn do hamachi:
1. Com o serviço ativo, listar todos contendo "logmein-hamachi", que é o nome do serviço:
# ps -aux | grep logmein-hamachi
root 396436 0.1 0.0 126228 6476 ? Ss 14:55 0:00 /opt/logmein-hamachi/bin/hamachid
root 405541 0.0 0.0 14252 968 pts/0 S+ 15:06 0:00 grep --color=auto hamachi
2. Verificar o nome que vamos usar para listar a quantidade de serviços do logmein-hamachi em execução. Iremos pegar o resultado da primeira coluna:
# ls | ps -e -o comm,command | grep logmein-hamachi
hamachid /opt/logmein-hamachi/bin/hamachid
grep grep --color=auto logmein-hamachi
3. O resultado da primeira coluna é o hamachid, ignore o retorno do grep.
Para listar a quantidade de serviços em execução:
# ls | ps -e -o comm | grep hamachid | wc -l
1
Retornou 1. No shell script farei a busca de quantos serviços em execução e caso seja menor que 1, irá executar automaticamente o service restart:
4. Crie o arquivo shell script:
$ touch serviceverifica.sh
5. Permissão de execução no shell script:
$ chmod +x serviceverifica.sh
6. Edite o shell script com seu editor favorito, no meu caso usarei o vim.tiny:
$ vim.tiny serviceverifica.sh
Deixar o script com este conteúdo:
#!/bin/bash
#lista a quantidade de registros ativos do hamachi e armazena na variável QUANTIDADE_HAMACHI
QUANTIDADE_HAMACHI="`ls | ps -e -o comm | grep hamachid | wc -l`"
#se $QUANTIDADE_HAMACHI for menor que 1:
if [ $QUANTIDADE_HAMACHI -lt 1 ];
then
#ativa o serviço do hamachi
service logmein-hamachi start
fi
#--------FIM DO SHELL SCRIPT---------------#
Espero ter ajudado.
#!/bin/bash #lista a quantidade de registros ativos do hamachi e armazena na variável QUANTIDADE_HAMACHI QUANTIDADE_HAMACHI="`ls | ps -e -o comm | grep hamachid | wc -l`" #se $QUANTIDADE_HAMACHI for menor que 1: if [ $QUANTIDADE_HAMACHI -lt 1 ]; then #ativa o serviço do hamachi service logmein-hamachi start fi #--------FIM DO SHELL SCRIPT---------------#
Script - Realizando relatório do servidor
Gravar DVDs no Linux pelo Cron
Nenhum comentário foi encontrado.
Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Descritores de Arquivos e Swappiness
Fez porcaria no teu repositório Git? Aprenda a restaurar uma versão anterior do seu código!
Restaurando Fontes de Download do Hydra no Linux
Atualizando "na marra" o YT-DLP quando começa a dar erro de downloads
Como instalar o WPS com interface e corretor ortográfico em PT-BR no Arch Linux
Remover nome dos programas abertos (1)
plasma nao memoriza alterações na configuração (0)
Bluetooth CSR 4.0 Dongle (Alternativo) (3)