Finalizar Procesos en Linux desde la Línea de Comandos

Como Finalizar Procesos en Linux desde la Línea de Comandos

Esta guía forma parte de una serie de posts dedicada al manejo de la terminal de Linux que puedes consultar en este mismo enlace. En esta parte te contaré como detener o matar procesos en Linux desde la línea de comandos. En GNU/Linux, como en todo sistema operativo, te habrás encontrado alguna vez con que el escritorio se queda completamente bloqueado por culpa del mal funcionamiento de algún proceso. En situaciones así puede parecer que el único modo de restablecer el funcionamiento sea reiniciar el sistema a lo bruto.

Hace unos días publique una entrada en la que explicaba como reiniciar el servidor X en Ubuntu en caso de que se hubiese bloqueado la sesión gráfica. Si bien es una manera muy válida de salir de la situación de bloqueo sin tener que reiniciar el sistema, hay maneras mucho más elegantes y eficientes de salir del apuro, y que por supuesto no requieren tener que volver a loguearnos de nuevo en la sesión gráfica de usuario.

En este post verás:

Como Acceder a la Terminal TTY

En GNU/Linux, un bloqueo de la sesión gráfica no tiene porqué afectar a todo el sistema, de modo que normalmente, delante de situaciones similares, siempre podemos optar por iniciar sesión en alguna de las terminales TTY y mirar de solucionar el problema desde allí. En este caso, vamos a ver como finalizar un proceso que nos esté dando problemas.

Aunque en situaciones normales puedes acceder a ver un listado de todos los procesos activos desde el monitor de recursos del escritorio, o bien a través de la terminal de escritorio, en caso de que te encuentres con el escritorio bloqueado, no podrás acceder a ninguna de ellas.

En estos casos, el único salvavidas será poder contar con una de las terminales TTY. Puedes acceder directamente a la terminal TTY1 mediante la combinación de teclas ‘CTRL+ALT+F1’. Una vez allí, deberás loguearte con tu usuario antes de poder utilizar ningún comando. Tan solo pon el nombre y la password y listo.

A partir de este punto podrás ejecutar comandos desde tu usuario estándar, pero ciertos comandos, como los que utilizaremos en esta guía.requieren permisos de root. Si utilizas Ubuntu, al poner un sudo delante de todos los comandos ya los estarás ejecutando con permisos de superusuario. Por el contrario, si usas otras distros como Debian o Fedora, deberás loguearte como root con su.

su

Comandos para Ver o Listar los Procesos Activos

#pstree

Mediante el comando pstree, puedes ver un árbol de todos los procesos activos del sistema.

$ sudo pstree

#ps

Mediante el comando ps -A puedes ver una lista con todos los procesos activos, junto con su PID.

$ sudo ps -A

Visto esto, es hora de que veas como finalizar o detener un proceso.

Comandos para Detener o Matar Procesos Activos

#pidof

Para conocer el PID de un determinado proceso, conociendo el nombre de este, puedes utilizar el comando pidof. (Aclaración: Antes había un error en el nombre de este comando, que ya ha sido corregido a fecha del 27/01/2017 gracias al comentario de Walter).

$ sudo pidof nombre-del-proces

#kill

Mediante el comando kill, podrás matar un proceso en Linux conociendo su valor PID. Con la sintaxis básica, el comando se ejecutará enviando la señal SIGTERM, que es la que viene por defecto y ordena la salida correcta del proceso (dándole tiempo a que realice las acciones pertinentes de salida).

$ sudo kill PID-del-proceso

Si la linea anterior no ha hecho efecto, puedes optar por ejecutar el comando kill con la opción -9, la cual envía la señal SIGKILL al procesos, forzándolo a la salida del proceso en caso de que este se resista, sin darle tiempo a realizar las acciones de salida.

$ sudo kill -9 PID-del-proceso

#killall

Con el comando killall podrás matar un proceso conociendo su nombre. Este comando solo es válido en Linux.

$ sudo killall nombre-del-proceso

Finalmente, puedes acceder otra vez al entorno gráfico mediante la combinación de teclas CTRL+ALT+F7.

#pkill

Otra opción para detener un procesos es utilizar pkill, que te permitirá detener un proceso indicando solo algunos caracteres de su nombre. Es un comando fácil de utilizar y que no requiere conocer el PID del proceso. Sin embargo, hay un riesgo, y es que la señal se enviará a todos los procesos que tengan una correspondencia en nombre. Como más caracteres introduzcas, más ajustada sera la búsqueda.

$ sudo pkill carácteres-nombre-del-proceso

Ultimas Consideraciones

Sea con el comando que sea, si has detenido correctamente el proceso que había provocado el bloqueo de la sesión gráfica, el escritorio estará de nuevo utilizable y podrás seguir trabajando en lo que estabas haciendo. El único punto a tener en cuenta es que se habrá terminado la aplicación correspondiente al proceso que acabas de detener.

Y en definitiva esto es todo hasta aquí. Espero que si has llegado hasta aquí realmente te haya sido útil la guía y hayas podido aplicar los pasos con éxito. Por contra, si tienes cualquier duda ya sabes que me tienes abajo en los comentarios:)

Anuncios

6 comments

  1. Oniel · febrero 6

    Hola Yuri, gracias por compartir. La verdad es que resolví un problema con la información que encontré es esta página sin tener que reiniciar la pc. Saludos

    Me gusta

  2. Walter · enero 20

    Hola Yuri, excelente blog, recien lo estoy leyendo, te quiero comentar que hay un detalle en uno de los comando, colocaste “pidoff” y el comando es “pidof”. Muchas gracias por estas horas de lectura y enseñanza que nos brindas.

    Me gusta

    • Yuri · enero 28

      Tienes toda la razón Walter, lo corrijo ahora mismo;)

      Muchísimas gracias por la aclaración.

      Saludos y me alegro mucho de que te sirva el blog!

      Me gusta

  3. Hola, agradezco mucho la información, poco a poco voy aprendiendo a usar Debian desde consola, todavía me falta saber como activar programas como un procesador de texto tipo openoffice o hojas de cálculo, visores de imágenes etc. He podido gracias a la ayuda de ustedes , navegar en la web sin inconvenientes desde consola , usar chats y ingresar en ordenadores de forma remota con ssh, todo esto vuelvo a repetir gracias a la generosidad de Ustedes. Saludos y felicitaciones!

    Me gusta

    • Yuri · agosto 5

      Hola Aquilesrati,
      Me alegra enormemente saber esto!

      Saludos y muchísimas gracias por el comment!

      Me gusta

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s