Tengo Fedora 20, con zshell y escritorio Mate. Me acabo de encontrar con estoartículo sobre el uso de claves SysRq, pero no dan los resultados que allí se muestran. Estoy usando Alt con la tecla marcada "Inicio" con "Imprimir Scr" encima como combinación de teclas SysRq.
También intenté mantener presionada la tecla amarilla "FN", pero esto no hizo ninguna diferencia.
Dado que la secuencia "Reiniciar incluso si el sistema está completamente roto" parece muy útil, me gustaría saber qué estoy haciendo mal.
Respuesta1
Probablemente tengas las combinaciones SysRq deshabilitadas. Hay algunas cosas que deben ser ciertas para que esto funcione:
- Debes tenerlo
CONFIG_MAGIC_SYSRQ
habilitado en la configuración de tu kernel. - Debe tener
kernel.sysrq
sysctl configurado en un valor que permita interpretar combinaciones SysRq.
kernel.sysrq
es una máscara de bits para habilitar/deshabilitar funciones:
- 0 - Completamente deshabilitado
- 1 - Completamente habilitado
- 2 - Permitir controlar el nivel de registro de la consola
- 4 - Permitir controlar el teclado
- 8 - Permitir controlar los volcados de procesos
- 16 - Permitir controlar
sync()
llamadas - 32 - Permitir remontar solo lectura
- 64 - Permitir señalización de proceso
- 128 - Permitir alterar el estado de energía del sistema (reiniciar/apagar/etc.)
- 256: permitir que las tareas de renovación se ejecuten en tiempo real
Suponiendo que desea habilitar todas las funciones SysRq, puede establecer el valor temporalmente usando la sysctl
herramienta:
sysctl -w kernel.sysrq=1
Para hacer esto de forma permanente, agregue la siguiente línea a /etc/sysctl.conf
:
kernel.sysrq = 1
Luego puede hacer que el sistema vuelva a cargar la configuración /etc/sysctl.conf
emitiendo sysctl -p
.
Respuesta2
Normalmente, cuando presionas un botón, el teclado genera un único código clave. El sistema operativo recibe códigos clave, aplica cierta asignación de claves e intenta manejar combinaciones de teclas independientemente del hardware subyacente.
El mecanismo SysRq es un poco diferente: el teclado capta la combinación y envía un código de tecla especial al sistema operativo como si se hubiera presionado un solo botón. El kernel de Linux captura el código clave especial y lo maneja internamente sin reenviar la entrada a aplicaciones de nivel superior como el servidor X. Eso implica las dos consecuencias:
La combinación de teclas realmente depende del teclado. El teclado debe captar la tecla todas las pulsaciones por sí solo y sólo el teclado "sabe" dónde está ubicada la tecla SysRq real y qué combinación activa el envío del código de tecla especial. Entonces:
- SysRq no está necesariamente ubicado en el mismo botón que "Inicio" o "Imprimir pantalla", intente buscarlo, generalmente está marcado explícitamente como "SysRq".
- Pruebe diferentes combinaciones:
Ctrl+Alt+SysRq+b
oCtrl+Alt+Fn+SysRq+b
, etc. (advertencia, el sistema se reiniciará si tiene éxito). En los teclados que tienen laFn
tecla, normalmente tienes que presionarla para llegar a laSysRq
tecla real, por lo que es probable que tu combinación involucre laFn
tecla.
De hecho, puedes saber cuándo aciertas con la combinación. Ejecute
xev
desde una terminal, enfoque laxev
ventana y presione algunos botones en el teclado, debería ver que aparecen eventos en la terminal. Cuando obtiene una combinación correcta, NO debería obtener un evento porque el kernel lo captura y no lo entrega al servidor X.
Consulte también la documentación:https://www.kernel.org/doc/Documentation/sysrq.txt