Ativar serviço que está parado
Publicado por Marcos Junior (última atualização em 20/11/2018)
[ Hits: 3.313 ]
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---------------#
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como impedir exclusão de arquivos por outros usuários no (Linux)
Cirurgia no Linux Mint em HD Externo via USB
Anúncio do meu script de Pós-Instalação do Ubuntu
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (5)
Formas seguras de instalar Debian Sid (0)
Alguém pode me indicar um designer freelancer? [RESOLVIDO] (4)
Alguém executou um rm e quase mata a Pixar! (1)
Por que passar nas disciplinas da faculdade é ruim e ser reprovado é b... (6)









