Eu tenho um bash
script que é executado via at
, eu o executo como
echo "bash /path/to/my/script.sh" | at -M now
porque quero que ele seja executado desanexado.
Quando o script é gerado, imediatamente vejo 2 instâncias ( ps
), e mesmo depois que meu script for concluído com êxito, outra instância simplesmente não será encerrada. Ele será reparentado para pid 1
e continuará esperando ( strace
shows wait4(-1...
).
Não consigo descobrir por que ou como essa segunda instância é bifurcada! Quando executo o script sem at
, não vejo o segundo processo. Alguma dica/dica para depurar isso?
Obrigado.
confira este script simples:
Isso redirecionará toda a saída dos scripts stdout & stderr para os arquivos de log especificados (neste caso,
/tmp/<pid>.log
e/tmp/<pid>-2.log
) e a parte stderr do arquivo de log conterá cada comando executado. Você pode usar essa saída para acompanhar a execução do script e ver onde ele trava...conteúdo de 17958-2.log: