Basicamente, hai 4 xeitos de Matar efectivamente a proceso en Linux: mátao por nome, especificando unha parte do nome, por PID, apuntando á xanela do proceso co cursor do rato. A ver un por un ... |
Índice
Matar: mata un proceso usando o seu PID
A forma máis complicada pero á vez máis precisa de matar un proceso é a través do seu PID ("Process Identifier"). Calquera destas 3 variantes pode servir:
matar -TERM pid matar -SIGTERM pid matar -15 pid
Pode usar o nome do sinal (TERM ou SIGTERM) que desexa enviar ao proceso ou o seu número de identificación (15). Para ver unha lista completa de posibles sinais, suxiro que consulte o manual de matanza. Para iso, execute:
home matar
Vexamos un exemplo de como matar Firefox:
Primeiro, tes que descubrir o PID do programa:
ps -ef | grep firefox
Ese comando devolverá algo así:
1986? Sl 7:22 /usr/lib/firefox-3.5.3/firefox
Usamos o PID que devolve o comando anterior para matar o proceso:
matar -9 1986
killall: mata un proceso usando o seu nome
Este comando é moi sinxelo
nome_proceso killall
Unha cousa que hai que ter en conta cando se usa este método é que se hai máis dunha instancia dese programa en execución, todos estarán pechados.
pkill: mata un proceso usando parte do seu nome
É posible matar un proceso especificando o nome completo ou parte do nome. Isto significa que non é necesario que recorde o proceso PID para enviar o sinal.
pkill nome_proceso_part
A cambio, este método matará todos os procesos que conteñan a palabra introducida. Isto significa que se temos abertos dous procesos que comparten unha palabra no nome, ambos pecharanse.
xkill: elimina un proceso seleccionando a xanela co rato
Este é o método máis sinxelo e práctico. En caso de desastre, só tes que premer Alt + F2 para abrir o cadro de diálogo que che permitirá executar comandos. A partir de aí, execute o seguinte comando:
xkill
O cursor do rato transformarase nunha pequena caveira. Só queda facer clic na xanela que desexa pechar e voila. Proceso de despedida.
Algúns comentarios finais
Para finalizar, quería compartir algúns consellos que poden ser útiles. En Linux, como en Windows, cando se colga un proceso, a xanela en cuestión pode normalmente pecharse facendo clic no botón Pechar (que ten forma de X). Despois duns segundos, aparecerá unha xanela preguntándonos se realmente queremos matar o proceso xa que non responde correctamente. Dicimos que si e xa está.
Isto significa que os métodos aquí descritos deben usarse cando non pasa nada ao facer clic no botón Pechar da xanela en cuestión.
En caso de desastre importante, non esqueza que antes de premer é posible realizar un reinicio "seguro".
Por último, pode ser moi útil descubrir que procesos se están executando actualmente. Para iso, os diferentes entornos de escritorio (GNOME, KDE, etc.) teñen ferramentas gráficas que facilitan esta tarefa. Non obstante, no caso de que non poida acceder a eles ou simplemente queira facelo dende o terminal, pode executar o seguinte:
arriba
No caso de que isto non funcione ou non teña instalado o paquete correspondente, sempre pode executar:
ps-A
Isto listará todos os procesos en execución, xunto cos seus respectivos nomes e PID.
22 comentarios, deixa os teus
«Ps -ef | "grep firefox" non é o mesmo que "pgrep firefox"?
Ben, persoalmente uso "pidof" para obter o PID.
Saúdos!
o que máis uso é:
~ $ top
mostrándonos a lista de procesos activos, entón se prememos «k» ou escribimos «matar» pediranos a pid do proceso para matar (lémolo desde arriba) e despois entrar, para saír arriba prememos «q».
Moi boa entrada, pero este formulario paréceme máis sinxelo. Se o terminal non funciona, intentamos con ctrl + alt + f [1-6] e facémolo desde alí.
Que xenios rapaces grazas por axudarme déronme unha boa man con esta publicación !!!
Ola! ¿Pode ser que o comando xkill só faga desaparecer o programa X e permaneza aberto? Porque sempre me pasa que cando vou ao xestor de tarefas o proceso segue vivo e teño que matalo.
Recoñézoo, son un novato. E os comandos killall e pkill vanme axudar moito. Grazas por subilas, moi bo blog.
Saúdos!
Recomendo htop, é o mellor para iso ...
funciona con ncurses
sudo apt-get install htop
pidof non é para todos os Unixes, por exemplo, Solaris non ten ese comando e iso lévanos a usar o potente ps.
lembranzas
htop é máis detallado e fácil de usar
No caso de usar PID, o correcto é $ kill PID que envía o sinal SIGTERM por defecto, no caso de que o proceso non responda, utilízase $ kill -9 PID que envía o sinal SIGKILL, este último elimina o proceso sen deixalo o mesmo peche correctamente (pode haber perda de datos por exemplo). SIGTERM pregunta por favor, SIGKILL dálle un machado 🙂
Moitas grazas, probareino se me volve a pasar.
unha consulta. Cando o ambiente de escritorio colga en Ubuntu (eu uso Unity), pódese reiniciar sen matar o resto de procesos? Non estou moi avanzado en Linux e a min pásame ás veces que estou traballando e colga, o único que fago é reiniciar de forma segura, pero perdo todo o que estaba a traballar.
Non sei se se entende a miña dúbida.
lembranzas
Un proceso no estado zombi non se pode matar de xeito tradicional.
Aquí para máis detalles: esdebian.org/wiki/matar-proceso-zombie
Para os máis avanzados, como matas un proceso no estado ZOMBIE?
só para xerar un pequeno chat 😀
Moi ben, só o que necesitaba ..
A verdade é que o comando kill é moi útil. Poder matar procesos molestos só invocando matar é xenial. Finalmente un comando que serve para algo.
Pregunta teórica: matar un proceso significa que deixa de funcionar. Entón, a miña pregunta é ao revés, se quero reiniciar ese proceso que matou, como o fago?
ben puxeches ./(o nome do proceso) &
Con isto volve executalo e o teu PID tamén sairá 😀
Excelente, tiven tempo buscando axuda coma esta. Foi moi útil para min. Moitas grazas por compartir.
Saúdos dende San Luís Potosí, México.
Como podo matar dous procesos coñecendo o seu PID no mesmo comando?
Creo que foi matar [Primeiro PID] [Segundo PID]
Moi interesante artigo. Este sitio web é o meu principal sitio web de Linux.
Xeralmente uso:
ps ax | grep nome_proceso (isto para localizalo no sistema)
matar -9 proceso_id
Comparto un curso gratuíto de bash en liña que vai ao redor:
https://aprendemia.com/cursos/curso-de-bash-scripting Esperemos que sexa útil.
e se quixera que fose un perfil en Linux só o que pecha como debería?
exemplo Teño 2 perfís de Firefox abertos
pero só quero pechar un só perfil
perfil 1
perfil 2
Quero que o perfil 2 só se peche como debería ser o comando
de antemán grazas pola resposta
como podo matar os procesos de primeiro plano de Ubuntu, cunha única liña de comandos