Reiniciando automaticamente um processo quando ele morre?

0

Eu tenho um processo em execução em um pi de framboesa. Depois de entrar no processo, é iniciado assim:

nohup .../blah/blah &

IIUC isso me permite sair do pi e o processo continua em execução. No entanto, ele morre às vezes, e eu tenho que fazer o login e reiniciá-lo manualmente. Existe uma maneira de monitorá-lo e reiniciá-lo?

    
por Ole 05.10.2018 / 21:31

1 resposta

3

Execute-o em um loop infinito:

#!/bin/sh

while true; do
    .../blah/blah
done

Este seria um script que você começa com nohup em segundo plano. Quando blah morre, ele é imediatamente reiniciado, até que o script seja eliminado.

Uma variação que finaliza o loop se um arquivo chamado stopme aparecer no diretório de trabalho do script (uma verificação é feita somente antes de (re) iniciar o blah ):

#!/bin/sh

while true; do
    [ -e stopme ] && break
    .../blah/blah
done
    
por 05.10.2018 / 21:34