Linux

Cómo manejar y matar procesos desde la consola en Linux: Kill, Killall, pkill…

Sabemos que en Linux, la consola nos brinda herramientas que son sumamente poderosas para la administración del sistema. Es por ello que, hoy hablaremos de comandos para el Manejo de procesos desde la consola en Linux. Es probable que varios de ellos ya los conozcan, pero nunca viene mal hacer un repaso; ya que estos nos permiten desde visualizar, configurar su prioridad, hasta matar los procesos.

Manejo de procesos desde la consola en Linux

top

Este es uno de los comandos clásicos en Linux para el manejo de procesos. Te permite visualizar los recursos usados por el sistema y de esta forma identificar cual de ellos esta consumiendo la mayor cantidad.

Sintaxis:

top

htop

Digamos que es una versión mejorada de top. Usualmente las distribuciones de Linux no lo traen instalado por defecto.

En caso de no tenerlo en su sistema, ejecutan lo siguiente para instalarlo:

sudo apt-get install htop

Su principal mejora es que la salida es mucho mas sencilla de interpretar en comparación a top. Adicionalmente, permite realizar otro tipo de operaciones sobre los procesos, como por ejemplo matar un proceso, de una manera muy fácil utilizando las teclas que se muestran en la siguiente imagen:

pgrep

Este comando nos permite determinar el PID del proceso que coincida con la búsqueda de la palabra clave suministrada. PID viene de las siglas en ingles de “Identificador de Proceso”. Veamos un ejemplo:

pgrep firefox

Nos retornara el PID del proceso “firefox”.

TE RECOMENDAMOS
6 razones para probar Linux en el dia de hoy

renice

Este comando nos ayuda en el modificación del valor “nice” de un proceso que se encuentra en ejecución.

El valor “nice” es el cual determina la prioridad de un proceso especificado. Su escala es la siguiente:

  • El valor de -19 representa muy alta prioridad.
  • Por el contrario, el valor 19 determina una baja prioridad.
  • El valor por defecto en el 0.

El comando renice, necesita como parámetro el PID de un proceso.

Sintaxis:

 renice 19 "PID"

ps

Es el comando universal por defecto de Linux para el manejo de procesos. Puedes visualizar los procesos y realizar operaciones sobre ellos. Es bastante practico pues te permite enlazarlo con otros comandos. Un ejemplo de ellos es usar “grep” para buscar un proceso en especifico, haciendo uso de las famosas Tuberías.

Ejemplo:

ps -A | grep firefox

Donde, “grep firefox” hace la búsqueda de procesos de Firefox.

pstree

Este comando nos permite visualizar todos los procesos con sus respectivas dependencias, en forma de un árbol.

Terminar procesos en Linux

Los sistemas operativos basados en Linux, incorporan un conjunto de herramientas útiles para terminar con los procesos que se han quedado colgados o que ya no requerimos que sigan ejecutándose. En este punto nos extenderemos un poco ya que existen 4 formas de terminar con un proceso y es una parte fundamental en el manejo de procesos en Linux. Puede ser a través de su nombre, también especificando una parte de su nombre, directamente por el PID o incluso señalando con el cursor la ventana de dicho proceso. A continuación veremos una a una.

Kill: usando el PID para matar el proceso

Es la manera mas complicada pero a la vez la mas precisa, ya que el PID es un identificado único de cada proceso en ejecución en un instante determinado.

Kill nos permite enviar diferentes tipos de señales, las cuales pueden cerrar un proceso o un grupo de ellos. La señal por defecto es TERM si no es especificada ningún tipo.

TE RECOMENDAMOS
Linux Mint 18.2 Sonya ya disponible, todas las novedades

Los siguiente tipos de señal son las más comunes:

  • SIGHUP: Se emplea cuando la consola no responde o si se perdido control sobre el proceso. Se encarga de cargar nuevamente los archivos de configuración del mismo así como sus posibles archivos log.
  • SIGKILL: Este modo es el mas radical para terminar un proceso, se emplea cuando ya este no responda. No se guardara ningún tipo de dato ya que no es una manera limpia para cerrar el proceso.
  • SIGTERM: Es el mecanismo por defecto para matar el proceso.

Ejemplo:

kill 22298

Donde, 22298 representa el PID del proceso.

killall: matar un proceso usando su nombre

Es un comando muy sencillo. Un dato a tener en cuenta es que, en caso de haber varias instancias del programa ejecutándose, el comando se encargara de cerrar todas.

Sintaxis:

killall nombre_proceso

pkill: matar un proceso usando parte de su nombre

pkill nos brinda la opción de aniquilar el proceso a través de su nombre o incluso una parte de el. Lo que nos libera de la necesidad de recordar el PID para especificar la señal. Sin embargo, se cerraran todos los procesos cuyos nombres contengan la palabra especificada.

Su ejecución seria:

pkill parte_nombre_proceso

Te recomendamos la lectura de las redirecciones y tuberías en linux.

xkill: matar un proceso seleccionando la ventana con el mouse

De todo el grupo, este es el mas practico y sencillo. Basta con presionar las teclas Alt + F2, seguido de esto se desplegara un cuadro de dialogo. Dicho cuadro te permitirá realizar la ejecución de comandos. Escribimos xkill. A continuación el cursos pasara a ser una calavera y al hacer clic sobre alguna de las ventanas, adiós proceso!

Deja en los comentarios tu experiencia, comparte con nosotros cuales de este grupo de comandos te resulta útil y ¿por que?

Yeraldine

Lcda. en Computación, Programadora, Apasionada por el Desarrollo Web. A veces Bellydancer, otras veces Yogui. Amo viajar, los libros y la música. En mis RRSS: @yerita02