¿Cómo identificar y eliminar el proceso de suspensión, cuando el sistema se bloquea y reacciona lentamente a la entrada del usuario?

24

Recientemente, cuando traté de abrir un video con VLC, mi sistema se desaceleró, las aplicaciones abiertas del navegador web, VLC y administrador de archivos y otras ya no reaccionaron. El ratón simplemente reaccionó aún muy lentamente.

En una máquina con Windows, presionaría un keycombi CTRL-ALT-DEL para abrir el administrador de tareas, buscar el proceso que causó el bloqueo y matarlo.

Como soy bastante nuevo con el uso de Linux, no he descubierto la mejor práctica para resolver tal situación en Ubuntu.

¿Qué forma rápida y efectiva recomendaría para identificar el proceso de suspensión y cerrarlo, cuando el sistema ya reacciona muy lentamente a la entrada del usuario?

NES
fuente

Respuestas:

32

Hay dos formas principales de identificar procesos bloqueados. Uno es a través de la GUI de Monitor de sistema y el otro es a través topde la línea de comandos.

Monitor del sistema

Esto se puede encontrar en Sistema> Administración

cuenta

También puede crear un atajo de teclado para esto en este artículo .

Una vez que se inicia la GUI, puede seleccionar la pestaña Procesos que enumerará todos los procesos en ejecución. Ordenar por la columna de CPU para encontrar la tarea más intensiva de CPU

UPC

Por último, puede hacer clic derecho en esa tarea y elegir finalizarla, detenerla o matarla. Matarlo se detendrá inmediatamente y eliminará ese proceso del sistema.

matar

Línea de comando

Si tiene un terminal abierto, simplemente puede escribir topesto, enumerará todos los procesos en ejecución similares a los de la pestaña Procesos en la GUI

parte superior

En la parte superior está ordenada por CPU de manera predeterminada, por lo que las tareas más intensivas en CPU están en la parte superior. En cualquier momento puede presionar la letra kpara matar un proceso

k

Simplemente escriba el PID del proceso que desea eliminar y presione Intro. Solicitará una señal de muerte para enviar. Para eliminar el proceso de forma agradable, use el valor predeterminado 15: para eliminarlo de inmediato "No pase, no coja $ 200", use 9.

sigkill

El proceso se terminará entonces.

Si experimenta una interfaz lenta, puede intentar SSH de forma remota si está habilitada, o cambiar a una consola virtual a través de Ctrl+ Alt+ F#Dónde F#hay una tecla de función (F3, F4, F5, etc.). Para volver al entorno de escritorio, cambie a F7 o F8 según su versión de Ubuntu.

Marco Ceppi
fuente
55
Gran respuesta. Por lo general, asigno el atajo CTRL + ESC al Monitor del sistema. Esto me da un acceso rápido al proceso de matar.
Javier Rivera
@Marco Ceppi: ¿dónde están las imágenes?
enzotib
@enzotib La publicación ha sido actualizada
Marco Ceppi
1
+1 para Monitor de sistema. Podría matar / detener un proceso de VLC suspendido, lo que htop no podría hacer.
malisokan
@malisokan ¿Estás seguro de htopque no puedes hacerlo? Puede enviar SIGKILL para eliminar cualquier proceso de bloqueo al que tenga derechos.
Val dice reinstalar Mónica el
4

Agregue el System Monitorapplet a su panel ( haga clic derecho en el panel, seleccione Add to Pannely busque System Monitor) y haga clic derecho sobre él para abrir la aplicación System Monitor.

Puede iniciar la aplicación System Monitor presionando Alt+F2e iniciando el programa gnome-system-monitor.

Vaya a la pestaña "Procesos" y haga clic con el botón derecho en la aplicación que desea matar .

Raphael Bossek
fuente
3

La mayoría ya dijo (me gusta la respuesta de Marco Ceppi) pero también hay un applet "Force Quit" que puede agregar a su Panel de GNOME. Haga clic derecho en el panel y elija "Agregar al panel ...":

texto alternativo

Esto le permite salir de una aplicación colgante simplemente haciendo clic en su ventana. Muy rápido y eficiente.


Al ejecutar Unity en 11.04, por supuesto, esta aplicación ya no estará disponible. Hay un proyecto de reemplazo Indicator-Forceclose pero no está incluido en los repositorios.

Alternativamente, podríamos correr xkilldesde una terminal.

Takkat
fuente
¿Solo destruye la ventana o también mata el proceso?
Val dice reinstalar Mónica el
@val mata el proceso que creó la ventana.
Takkat
Acabo de probar: no lo hace. Hice un programa que se cuelga dentro de la devolución de llamada GTK y lo maté con xkill. La ventana desapareció, pero el programa continuó ejecutándose (o se cuelga si lo prefiere). Entonces la respuesta es no, puede que no mate el programa si está muy atascado.
Val dice reinstalar Mónica el
@val, naturalmente, después de que su programa haya llamado a otro proceso para crear una ventana xkill, matará solo este proceso adicional. Esto es especialmente importante para los programas que se ejecutan sin un servidor X pero que llaman a X para ventanas. Obviamente, sería imposible matar cualquier programa de este tipo desde el servidor X.
Takkat
Mi programa no llamó a otro proceso para ello. Hice un programa que es igual a cualquier aplicación GTK y lo colgué. xkillno afecta dichos procesos (GTK provocará la salida si luego salgo "colgando" y hago que maneje la pérdida de la ventana). Las devoluciones de llamada de GTK no tienen nada que ver con el multiprocesamiento.
Val dice reinstalar Mónica el