Como faço para matar um processo criado com o disown?

1

Eu queria manter um programa, redshift, rodando em segundo plano ao invés de ter que manter um terminal constantemente aberto. Aprendi com um fórum que eu posso fazer isso digitando $ redshift & seguido por $ disown . No entanto, não consigo descobrir como interromper esse processo sem reiniciar meu computador. Tenho certeza que foi descrito em algum lugar, mas sou analfabeto quando se trata de Linux. Se você puder, por favor, explicar em termos simples como parar isso, eu agradeceria.

    
por Ken Chester 10.03.2018 / 19:34

1 resposta

2

O primeiro passo é encontrar o número de identificação do processo (conhecido como ID do Processo - PID). Um bom utilitário para encontrá-lo é pgrep , onde você pode especificar parte do nome do processo e retorna o PID de cada correspondência:

pgrep redshift

ps aux | grep redshift também é útil para determinar o processo certo se houver mais de uma correspondência.

O próximo passo é enviar um sinal e terminar o processo:

kill PID

em que PID é o número retornado por pgrep

Você pode enviar sinais diferentes com semântica diferente, por ex. kill -SIGKILL PID tem garantia de encerrar o processo, mas não deixa espaço para limpeza; kill PID e / ou kill -SIGINT PID são geralmente preferíveis.

Há também pkill que enviará um sinal para um processo que corresponde ao nome.

    
por 10.03.2018 / 19:55

Tags