jueves, 15 de diciembre de 2016

sysqr no responde. ¿Dónde se activan las teclas mágicas?

Esta entrada tiene cierta relación con la anterior. En los tres ordenadores que tengo funcionando con Fedora 25, dos funcionan perfectamente con Wayland, descontando algunas alteraciones que iré explicando cuando las comprenda, pero un tercero, el más potente, el más moderno, muestra ciertas respuestas extrañas cuando está en el sistema gráfico Wayland. Fundamentalmente, el sistema muestra una granulación en el monitor y a partir de ese momento deja de responder a las órdenes gráficas y no deja llamar a un escritorio de texto (Ctrl+Alt+ F2 a F7, siendo F1 el que soporta el sistema gráfico). Este ordenador es el único que tiene una tarjeta gráfica externa, nVidia, por cierto; los demás llevan gráficas de Intel incorporadas en el procesador, y lo digo por si eso tiene que ver y alguno ve la relación. Además las primeras veces que se me bloqueó  el sistema no fui capaz de realizar una salida ordenada mediante sysrq (REISUB) y tuve que saltar el sistema con la tecla de reseteo.
Como había indicado en una entrada en la instalación de Fedora 18, la localización de los ficheros de configuración del sistema había cambiado de Fedora 17, /etc/sysctl.conf, al directorio /usr/lib/sysctl.d en Fedora 18, actuando desde  ese momento en el fichero /usr/lib/sysctl.d/00-system.conf. Y así apliqué tras la instalación de Fedora 25


y sin embargo no se ejecutaba la orden AltGr+ImpPant + REISUB.  Para comprender lo que supone, cada una de las letras ejecuta lo siguiente:

R pone el teclado en modo RAW (recobrar el control desde el entorno gráfico X al teclado)
E termina todos los procesos (end) (envía el comando Sigterm a todos los procesos, para finalizarlos ordenadamente)
I interrumpe todos los procesos (envía el comando Sigkill a todos los procesos, para forzar su terminación)
S sincroniza el disco duro (synchronize, descargar datos de la memoria a los ficheros en el disco duro)
U desmonta todos los sistemas de ficheros (unmount y volver a montar los sistemas de ficheros como de solo lectura)
B reinicia la máquina (reBoot)


Para evitar un tercer reseteo estuve evaluando los diferentes ficheros de configuración —/usr/lib/sysctl.d/— y en el fichero 50-default.conf aparece un mensaje así

#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.

# See sysctl.d(5) and core(5) for documentation.

# To override settings in this file, create a local file in /etc
# (e.g. /etc/sysctl.d/90-override.conf), and put any assignments
# there.

# System Request functionality of the kernel (SYNC)
#
# Use kernel.sysrq = 1 to allow all keys.
# See http://fedoraproject.org/wiki/QA/Sysrq for a list of values and keys.
kernel.sysrq = 16

Para que veamos lo que supone cada número dentro del sysrq, el orden es:

0 - disable sysrq completely
1 - enable all functions of sysrq
>1 - bitmask of allowed sysrq functions (see below for detailed function description):
     2 - enable control of console logging level
     4 - enable control of keyboard (SAK, unraw)
     8 - enable debugging dumps of processes etc.
     16 - enable sync command
     32 - enable remount read-only
     64 - enable signalling of processes (term, kill, oom-kill)
     128 - allow reboot/poweroff
     256 - allow nicing of all RT tasks

Es decir, la el comando kernel.sysrq = 1 ejecutado en el primer fichero (00) de configuración es anulada por la kernel.sysrq = 16 colocado por systemd (50). Así que he sido obediente a systemd y he trasladado a un fichero /etc/sysctl.d/90-override.conf kernel.sysrq = 1, dejándolo fuera del directorio de configuración, y lo he eliminado del fichero 00. Algo exclusivo este systemd


Listo

No hay comentarios:

Publicar un comentario