Eu trabalho em uma máquina Linux conectada a um cluster. Se eu fizer isso top
em um terminal, vejo muitos (cerca de 200) processos inativos. Provavelmente eles foram causados por mim ao Ctrl+C
usar esses processos de forma inadequada.
Como posso saber quais empregos para dormir são seguros kill
?
EDITAR:Posso verificar os processos por ps -e S
. O problema é, provavelmente, que não entendo o resultado. Por exemplo:
24086 pts/0 Ss+ 11971:50 -tcsh
24084 ? S 0:00 (sd-pam)
22183 ? Sl 10:08 /usr/bin/gedit --gapplication-service
4790 ? S 0:00 [kworker/u16:2]
1043 tty7 Ssl+ 91:14 /usr/sbin/brld --nodaemon
E muitos outros. Como posso saber se, ao matá-los, não causarei nenhum problema à minha máquina ou aos trabalhos logados de outras pessoas?
Responder1
Em vez de olhar para cima para ver seus processos de sono, talvez seja melhor fazer um ps -ef | grep <process name>
em vez de tentar obtê-los de cima. dessa forma, você obterá o pid
que precisa para encerrar o processo. muitos dos processos adormecidos no topo são normalmente processos do sistema.
exemplo:
[thebtm@localhost thebtm]# ps -ef | grep httpd
root 1257 1 0 Mar28 ? 00:00:51 /usr/sbin/httpd -DFOREGROUND
root 2920 10825 0 08:35 pts/3 00:00:00 grep --color=auto httpd
apache 16936 1257 0 Apr10 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 16937 1257 0 Apr10 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 16939 1257 0 Apr10 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 16940 1257 0 Apr10 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 20857 1257 0 Apr10 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 20858 1257 0 Apr10 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 20859 1257 0 Apr10 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 20860 1257 0 Apr10 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 21040 1257 0 Apr10 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 21041 1257 0 Apr10 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
[thebtm@localhost thebtm]# kill 16936