Como cerrar procesos/programas bloqueados en Linux/Ubuntu

18 07 2006

Hoy os voy a contar cual es mi método para cerrar esos programas -casi siempre juegos- que, al ejecutarse en pantalla completa pueden llegar a bloquear nuestro linux en caso de que contengan algún bug o error.

Este es mi método personal, posiblemente haya alguno mejor o más “elegante” pero este es el que a mi me funciona siempre:

Escenario: Tenemos un programa bloqueado a pantalla completa. No podemos ejecutar gnome-system-monitor (útil para cerrar programas rebeldes) y no responde al típico control+c o a alt+F4 ¿que hacemos?

Lo primero es pasar a modo consola, tendremos una consola del sistema pulsando:

Control + Alt + F2

Entonces nos pedirá (a mi me lo pide) el nombre de usuario y contraseña. Usamos el de usuario normal, no necesitamos nivel de root.

Ahora tenemos una consola funcional. Para poder cerrar el programa necesitaresmos su PID (Process Identification, creo). Podemos sacar una lista de todos los procesos que se están ejecutando junto con su correspondiente PID con el comando ps pero posiblemente la lista sea muy larga así que pasaremos la salida de ese comando por un filtro con grep para que nos de el PID exacto del programa que queremos cerrar, esto lo haremos de la siguiente manera:

ps -e | grep nombreprograma

El nombre del programa puede variar. En mi caso los bloqueos me han ocurrido alguna vez con el juego Enemy Territory (excelente juego por cierto). El ejecutable de Enemy Territory se llama “et” (abstenerse chistes fáciles) así que en caso de que se bloqueara el juego, para encontrar el PID del mismo hariamos:

ps -e | grep et

Y entre los resultados probablemente aparecerá el proceso del juego/ programa junto con su PID.

Una vez tengamos el PID cerrar el programa es tan sencillo como hacer:

kill PID

(donde PID es el número PID del programa que está bloqueandote el sistema)

Ahora ya debería de estar cerrado ese molesto programa pero aun tenemos ante nosotros la consola y nosotros queremos volver a nuestro tuneado escritorio asi que pulsamos:

Control + Alt + F7

Y tendremos nuestro escritorio ya liberado del programa que lo bloqueaba.

Insisto, estas instrucciones son las que a mi me funcionan. Uso Ubuntu Dapper Drake (Ubuntu 6.06) pero imagino que en cualquier otra Ubuntu o si me apuras en cualquier otra Debian deberían funcionar.

Correcciones y comentarios serán más que bien recibidos.


Acciones

Información

28 respuestas

19 07 2006
elsamu

Funciona en todos los sistemas Linux sin distincion entre unos y otros.
Decir tambien que si con killall no funca, hacer uso de kill PID, si aun asi sigue sin matar el proceso, intentar un kill -15 PID y si sigue sin funconar aplicar ya la señal sigkill, con un kill -9 PID.

Un saludo!

19 07 2006
Bronch

Ok Elsamu, ahora mismo que acabo de leer tu comentario no tengo tiempo pero esta noche lo compruebo y si no te parece mal lo añado al post (con los correspondientes créditos claro)

27 09 2006
¿Cuales son las 10 ordenes que más usas en linux? « El Cajón de Bronch v2.0

[...] 4 -> lista los procesos corriendo ( para cerrar programas conociendo su  id por ejemplo) [...]

1 10 2006
juan miguel

gracias bronch, estaba ejecutando el MPLAYER y se bloqueo viendo un vcd viejito y rallado, me funciono de maravilla, muchas gracias.

1 10 2006
bronch

Me alegro :)

15 01 2007
caeron

buento tarde pero estoy aki ^^

y la gracia para cerrar una consola que ya no usamos? yo he intentado matar el proceso pero no funciona.

15 01 2007
Bronch

Concreta, ¿a que te refieres con “una consola que ya no usamos”? ¿una consola bloqueada? ¿o las consolas a las que se accede con Control+AltF2 (por ejemplo)?

16 01 2007
caeron

bronch justo esas las que accedemos usando ctr+alt+Fx como se hacen para cerrar esas consolas que no usamos.

17 01 2007
caeron

bueno ale, pregunta tonta respuesta estupida, no se porque siempre que se trata de este SO me gusta complicarme la vida, ayer medio por hacer algo muy tonto en una consola

quit no existe
exit otia se cerro la consola y se kedo esperando otro usuario.

conclusion respuesta auto contestada, para cerrar una consola es exit XD

18 01 2007
Bronch

De todas formas, mirate una guia que circula para optimizar ubuntu (seguramente te saldrá el primer resultado en google) en esa guía se menciona como desactivar las consolas secundarias que están continuamente funcionando en segundo plano. Con eso igual de paso te ahorras un par de megas.

Ah, y no creo que en temas de informática haya preguntas tontas, nadie nace sabiendo. (bueno, vale, la de la señora que decía que como se sacaba otra vez el “posavasos” del ordenador es mítica)

11 02 2007
Jose

Gracias, me ha venido muy bien.

27 05 2007
Sebasthian

hola, esta muy buena esta guía. Con tu permiso la pongo en mi blog citando esta página y su autor.

28 05 2007
bronch

Si se citan los orígenes del texto puede ponerse donde y cuando quieras (siempre sin ánimo comercial) aunque por supuesto te agradezco la nota. Suerte con el blog.

4 06 2007
MARTIN

Funciona perfecto en ubuntu 7.04

4 06 2007
bronch

me alegro :) hasta donde mis pocos conocimientos llegan debería funcionar en todas las debian y derivados.
¿quizá en las demás distros también?

25 07 2007
Manu

Creo que no es necesario hacer el:

$ ps -e | grep et (por ejemplo, yo tb soy jugador asiduo =)

Al acceder a la consola con alt+f1, puedes poner directamente esto:

$ killall et

yo alguna vez lo he probao y funciona. kill necesita el número que identifica el programa, mientras killall acepta el nombre del ejecutable.

26 07 2007
bronch

Gracias! no sabía como se usaba killall, probaré lo que comentas.

29 07 2007
Fran

Yo suelo hacerlo en modo “no complicarme” jeje, me explico, accedo a una consola y despues kill -9 -1, mano de santo.
Al hilo del asunto os pongo otro metodo, que supongo que ya lo sabreis, pero de todas formas lo digo.
Si el proceso/programa bloqueado es “solo” una ventana del escritorio de Ubuntu que no esta en “pantalla completa”, cerrarla es tan facil como pulsar Alt+F2, poner xkill y pulsar intro. El icono del puntero cambia a una carabela, ya solo nos queda pinchar en la ventana del proceso que queremos cerrar.

Nota: Se cerraran todas los procesos similares que esten abiertos, por ejemplo, si tenemos varias ventanas de Firefox, se cerraran todas.

16 08 2007
c-ramO

Muchas gracias!!!
Me viene de perlas :D

16 08 2007
bronch

malegru.

8 09 2007
z01x

Con pidof también se puede, no es así?:
pidof firefox-bin –> Nos devuelve el proceso del programa (p.e. 8556)
kill 8556

9 09 2007
bronch

Lo añadiré.

2 02 2008
david

Gracias por el artículo me ha servido para eliminar la ventana que quería con los efectos secundarios de que se me ha quedado el escritorio mucho mas ampliado (como con un zoom) pero lo bueno es que con el ratón se desplazaba la pantalla y podido hacer todo lo que quería antes de cerrar alguien sabe porque ha pasado esto y/o alguna manera de que no pase? (aunque al reiniciar se me ha solucionado :D ) La pantalla fullscreen era una pygame desde consola.

Para los que no sepan el nombre concreto del proceso (como yo) se hace un ps -e y lo mas normal es que salga de los últimos ya que después de la pantalla completa no he podido tocar muchas cosas mas.

Saludos.

7 03 2008
Claret

kill -9 es mas efectivo si quieres matar el proceso que quieras. sin ninguna compicacion

1 12 2008
jorch yr

Yo perefiero usarl el comando top es muy util ya que dice los procesos activos su uso de cpu memoria ram y pid

30 06 2009
FELO

justo lo que necesitaba! gracias!

3 07 2009
julio

jeje en ubuntu 9.0.4 en sistema –> administracion –> monitor del sistema tambien se puede no es tan pro como chutarselo en consola pero funciona saludos

12 08 2009
Alexander

En Ubuntu se puede agregar a un panel cualquiera un elemento llamado “Forzar cierre”, es muy práctico porque sólo basta con hacer clic en en icono de “Forzar cierre” y luego sobre la ventana que tiene comportamiento errático o esta bloqueada.

Deja un comentario