Como matar un proceso en Linux

Como matar un proceso en Linux. Una de las grandes ventajas de Linux, es la posibilidad de finalizar o matar un proceso sin tener que reiniciar tu sobremesa o servidor. Vemos como hacerlo con los comandos:

  • kill
  • pkill
  • killall

Antes de comenzar, necesitas saber lo qué es el ID de proceso, más conocido como PID.

El PID es la identificación numérica que linux le otorga a cada proceso en funcionamiento, por tanto cada proceso tiene un PID unico. Para que lo entiendas mejor… el primer proceso que se inicia en Linux es “init“, por tanto su PID será “1”. Este proceso es la base de todos los procesos (es evidente, es el de arranque). El proceso init no se puede matar con los comandos de la familia kill, es por tu propia seguridad, para que no sea posible apagar el sistema por error.

 

Podemos localizar el Pid de cada proceso en ejecución, con el comando:

Ejemplo:

PID TTY TIME CMD
1 ? 00:00:03 systemd
2 ? 00:00:00 kthreadd
3 ? 00:00:00 ksoftirqd/0
5 ? 00:00:00 kworker/0:0H
7 ? 00:00:09 rcu_sched
8 ? 00:00:00 rcu_bh
9 ? 00:00:00 migration/0
10 ? 00:00:00 watchdog/0
11 ? 00:00:00 watchdog/1
12 ? 00:00:00 migration/1
13 ? 00:00:00 ksoftirqd/1
15 ? 00:00:00 kworker/1:0H
17 ? 00:00:00 kdevtmpfs
18 ? 00:00:00 netns   …… etc….

 

Como ves nos da un listado de todos los procesos en ejecución, pero ojo… el listado puede ser inmenso. Por tanto si quisiéramos buscar el PID de un proceso en particular (por ejemplo php), sería:

Si queremos más detalles, usaríamos “ps aux” + “grep”.

Ya sabemos como localizar el PID, ahora lo matamos.

 

Matar un proceso con kill

Antes de continuar, debes saber que…

  • Solo puedes matar los procesos de tu ID de usuario
  • No puedes matar los procesos de ID
  • Un usuario no puede matar procesos del sistema
  • El usuario root puede matar cualquier proceso, ya sea de sistema o de otro usuario

El comando kill se usa con extensiones, que en realidad comunica la forma de matar el proceso. Las más usadas son:

1 – El 1 cuelga las llamadas al proceso

9 – El 9 mata literalmente el proceso

15 – El 15 termina el proceso

Normalmente la más usada es la “9”. Por tanto, si tomamos como ejemplo que el PID de php es el 3076, lo que hacemos es:

 

Matar un proceso con el comando pkill

El comando pkill, mata por el nombre del proceso en vez de por la PID (funciona, pero no es el más recomendable). Por ejemplo, si queremos matar “php“, lo haremos con el siguiente comando.

 

Matar un proceso con killall

Si queremos eliminar un proceso junto con todos sus procesos secundarios, debemos usar el comando killall, (de echo es el más usado):

Por ejemplo:

O mejor aun…

Del comando killall, tienes un buen ejemplo en un script *.sh, bastante efectivo para mantener limpio tu vps o servidor. Puedes verlo en este enlace.

Si tienes problemas para el uso de los comandos kill o killall, revisa este articulo donde tienes la solución.

 

Espero que este articulo os sirva de ayuda.

Como matar un proceso en Linux
4.5 (90%) 4 Votos

Agregar comentario

Suscribete

Suscribete a nuestro newsletter y mantente informado con nuestros últimos artículos, noticias y más. Todo completamente gratis.

Tu suscripción a sido realizada con éxito.