Ativar serviço que está parado
Publicado por Marcos Junior (última atualização em 20/11/2018)
[ Hits: 3.067 ]
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---------------#
Limitador de conexões para usuários
Compilação de módulos para VMware 12.5.7 no Fedora 26
Criando Autoridades Certificadoras e Certificados de Testes no Linux
Copia arquivos distribuidos em pastas diferentes para uma única pasta.
Baixando e instalando o Asterisk
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
Solução rápida para o problema do Network Manager conectar mas não navegar
Como instalar no Linux Jogos da Steam só para Windows
Instalando o Team Viewer no Debian Trixie - problema no Policykit
Sunshine e Moonlight Linux (0)
Menu configurações e mudar plano de fundo não funcionam (7)