Processo de interrupção quando o PID muda constantemente

9

Quando eu emitir

ps aux | grep mtp

eu recebo

ubuntu- + 15934 0,1 0,0 519848 7068? Sl 21:13 0:00 / usr / lib / gvfs / gvfsd-mtp --spawner: 1.9 / org / gtk / gvfs / exec_spaw / 20

Portanto, o PID nesse caso é 15934. Mas a cada nova execução, o PID é diferente. Existe alguma outra maneira de matar um processo que não seja pelo PID?

Bachalo
fonte
PID diferente → processo diferente.
Phd
3
Se o PID estiver mudando constantemente, o processo será constantemente encerrado e um novo processo com o mesmo nome será iniciado. Então você provavelmente deseja seguir o processo pai, o que está iniciando os filhos. Veja ps -ely | awk 'NR==1||/mtp/'e veja a coluna PPID
icarus
1
Uma abordagem melhor seria entender o que realmente está acontecendo e corrigir isso . Descubra por que a montagem MTP não está funcionando, verificando logs e assim por diante, e corrija-a para que realmente funcione. Descubra por que o GVFS tenta a montagem do MTP e evite que seja necessário. Descubra onde o MTP automount está acontecendo e desative-o. Descubra por que o GVFS é necessário e pare com isso. Ao contrário de matar processos sem querer e sem entender e quebrar os aplicativos de desktop GNOME como conseqüência.
JdeBP

Respostas:

8

Provavelmente, existe um processo pai que mata processos filhos e bifurca novos filhos. Você pode usar o pstree para encontrar o processo pai:

pgrep mtp | xargs -i pstree -ps {}

Ou, como alternativa, você pode usar a opção ppid do ps:

pgrep mtp | while read line; do ps -p $line -o ppid; done

Então você pode matar o processo pai

Serhat Cevikel
fonte
0

Você pode usar pkill mtp ou matar -9 pidof mtp

Observe que, se houver vários processos mtp, esses dois comandos matarão todos os processos mtp no sistema.

Rami Rosen

Rami Rosen
fonte
5
Isso ou killall mtpmatará os mtp's, no entanto, possivelmente existe outro processo que bifurca constantemente novos processos de mtp quando crianças. Sem matar, isso não serve para nada.
Serhat Cevikel
0

Eu emiti

ps aux | grep mtp

o que me deu alguns processos relacionados ao mtp e comparou com a câmera montada e desmontada para obter o processo específico

e depois

pkill -9 gvfsd-mtp

faz o truque.

Mas suponho que a resposta acima funcione também :)

Bachalo
fonte