Resolvido!
O problema foi que o script foi concluído com &
Quando excluí o & do script e executei o comando da seguinte forma:
nohup sudo script.sh &
Os processos tail e grep estavam sob o principal script pid:)
Eu tenho um script que verifica um arquivo de log e procura por uma string, e é executado em segundo plano com & .
Quando eu ps -ef | grep script.sh e eu matar esse script, sempre consigo ver os processos tail e grep do mesmo script ainda vivos.
Outra coisa é que o ID do processo de tail é o id do processo script.sh menos 2 (ou seja, script.sh pid é 7002, tail pid é 7000 e grep pid é 7001.
script.sh começam como seu próprio serviço com o pai pid = 1? script.sh e todos os processos filhos criados? Thanx.