martes, 26 de abril de 2011

Combinación de teclas de para cuelgues del sistema GNU/Linux

Fuente:  opendesktop.org

Bueno pues manos a la obra... Yo que que es dificil pero hay algunas veces que de repente se te cuelga el sistema, puede ser culpa de las X, una aplicación, en mi caso pasó con un volumen muy grande de archivos a copiar, resulta que el sistema se colgaba, intentaba pasar a las consolas y nada, entonces recordé un pequeño tip que había leído y es de lo que trata este pequeño thread.

Tecla SysRq

Esta pequeña tecla es la que nos puede salvar de hacer un reset "en caliente", claro está mientras no estés completamente bloqueado.

Ahora el punto importante ¿Como se usa?

primeramente tienes que observar que tu teclado responde, es decir que enciendan o se apaguen los leds del mismo. Posteriormente dejamos oprimidas las teclas de ALT + SysRq (es la tecla tambien que tiene en la parte superior el Print Sc) y comenzamos a teclear la siguiente secuencia.

REISUB, más abajo pueden observar la funcion de cada tecla, ademas de algunas otras teclas de comando

'r' - Cambia el teclado del modo raw al modo XLATE.

'k' - Mata todos los programas en la consola virtual actual.

'b' - Reiniciar inmediatamente el sistema sin sincronizar o desmontar sus discos.

'o' - Apagar su sistema (si está configurado y lo soporta).

's' - Intentar sincronizar todos los sistemas de ficheros montados.

'u' - Intentar montar de nuevo todos los sistemas de archivos montados como solo lectura.

'p' - Volcar los registros y banderas actuales a su consola.

't' - Volcar una lista de las tareas en ejecución y su información a su consola.

'm' - Volcar la información actual de la memoria a su consola.

'0'-'9' - Establece el nivel de informacin en consola, controlando los mensajes del núcleo que se mandarán a la consola. ('0', por ejemplo hará que solo los mensajes de emergencia como PANIC u OOPS salieran en su consola.)

'e' - Manda un SIGTERM a todos los procesos, excepto para init.

'i' - Manda un SIGKILL a todos los procesos, excepto para init.

'l' - Manda un SIGKILL a todos los procesos, INCLUYENDO init. (Su sistema ya no será operativo tras esto).

Ahora si desean pueden usar solo algunas teclas de comando, a continuación se presentan algunos ejemplos de su uso.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Bueno, un

'R'aw es práctico cuando su servidor X o un programa svgalib se cuelga.

sa'K'udir (tecla de atención al sistema) va bien cuando quiere salir de un programa que no le deja cambiar de consola. (Por ejemplo, X o un programa svgalib.)

re'B'oot es bueno cuando no puede apagar. Pero también debería 'S'incronizar y 'U'mountar primero. 'S'incronizar es genial cuando su sistema está bloqueado, le permite sincronizar sus discos y disminuir el riesgo de pérdida de datos y el tener que ejecutar fsck. Note que sync no habrá tenido lugar hasta que vea en su pantalla "OK" y "Done". (Si el núcleo está realmente en problemas, puede ser que nunca vea los mensajes OK o Done...)

'U'mount se usa básicamente igual que 'S'. Yo normalmente 'S'incronizo, 'U'monto, y re'B'oto cuando mi sistema se bloquea. Me ha ahorrado muchos fsck. De nuevo, el desmontaje (montaje en solo lectura) no tiene lugar hasta que los mensajes "OK" y "Done" aparezcan en su pantalla. El nivel de mensajes

'0'-'9' es práctico cuando su consola está siendo inundada de mensajes del núcleo que ud. no quiere ver. Poniendo '0' evitará todos esos mensajes en su consola, menos los más urgentes . (Sin embargo, aún podrá verlos si syslogd/klogd están vivos.)

t'E'rminar y k'I'll son prácticos si tiene algún proceso en ejecución que no puede matar de ninguna otra manera, especialmente si está produciendo otros procesos.

* A veces SysRQ parece bloquearse tras usarla, que puedo hacer?

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Eso me pasa a mi también. He descubierto que tecleando mayúsculas, alt, y control en ambos lados del teclado, y presionando una secuencia inválida sysrq de nuevo, arreglará el problema. (p. ej., algo como alt-sysrq-z). Cambiando a otra consola virtual (ALT+Fn) y volviendo de nuevo,también podría ayudar. * Presiono SysRQ, pero no parece suceder nada,que va mal?

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Hay algunos teclados que no soportan 'SysRQ', puede intentarlo ejecutando 'showkey -s' y presionando SysRQ o alt-SysRQ para ver si genera algún código 0x54. Si no lo hace puede definir la secuencia sysrq a una tecla diferente. Busque el código de la tecla con showkey, y cambie la definición de '#define SYSRQ_KEY 0x54' en [/usr/src/linux/]include/asm/keyboard.h al código de tecla que ud. quiera usar, y recompile. Oh, y a propósito, se sale de 'showkey' esperando diez segundos sin teclear nada.

Espero que les sirva. Dudas, comentarios, críticas ideas para futuros post son bienvenidos.

fuente de información

http://es.tldp.org/NuLies/web/2.2/Documentation/sysrq.txt

No hay comentarios:

Publicar un comentario