Deshabilitar la pantalla en blanco en la consola de texto


75

Estoy ejecutando clústeres de Linux, principalmente en SLES10. La mayoría de los servidores son blades, a los que se accede mediante una consola remota. Hay una consola real en la sala de servidores, pero está apagada.

Me gustaría deshabilitar la pantalla en blanco, ya que no sirve para nada y es una molestia. Tienes que presionar la tecla para ver si estás conectado, lo cual es un dolor. Estamos ejecutando en el nivel de ejecución 3, por lo que la consola está en modo de texto, sin X11 involucrado.



Respuestas:


85

Puede verificar qué tiempo de espera utiliza el kernel para la supresión de la consola virtual a través de:

$ cat /sys/module/kernel/parameters/consoleblank
600

Este archivo es de solo lectura y el tiempo de espera se especifica en segundos. El valor predeterminado actual parece ser de 10 minutos.

Puede cambiar ese valor ingresando el siguiente comando en una consola virtual (si está dentro de un xterm, debe cambiar a una consola virtual presionando, por ejemplo, Ctrl+ Alt+ F1).

$ setterm -blank VALUE

Donde el nuevo VALOR se especifica en minutos . Un valor de 0 deshabilita la supresión:

$ cat /sys/module/kernel/parameters/consoleblank
600
$ setterm -blank 0
$ cat /sys/module/kernel/parameters/consoleblank
0

setterm tiene otras opciones relacionadas con el ahorro de energía, la combinación más útil parece ser:

$ setterm -blank 0 -powersave off

Por lo tanto, para desactivar permanentemente / automáticamente la supresión de la consola virtual en el inicio, puede:

  1. agregar consoleblank=0a los parámetros del kernel (editar configuración de grub)
  2. agregar el setterm -blank 0comando a una rc-localsecuencia de comandos de inicio o equivalente
  3. agregue la settermsalida /etc/issueya que /etc/issuese emite en cada consola virtual:

    # setterm -blank 0 >> /etc/issue

Elija una alternativa de las anteriores.


2
PD: En un sistema Ubuntu 11.10 (Thinkpad X200), noté un error en el que la consola en blanco por el núcleo interfiere con una sesión X11 en ejecución. Eso significa que exactamente 10 minutos después de la última tecla, presione la pantalla X11 en blanco y tendrá que desplazarse a una consola virtual para recuperar la pantalla X11 (muy molesto durante, por ejemplo, la reproducción de video). Esto es independiente de la configuración relacionada con DPMS / salvapantallas en X11 (pensar, xsetetc.). Por lo tanto, deshabilitar la supresión de la consola virutal como se describió anteriormente es una solución rápida para los sistemas afectados.
maxschlepzig

hmmm Por alguna razón, no veo /sys/module/kernel/parameters/consoleblanken mi servidor CentOS 5.x. ¿Podría establecerse con un nombre diferente?
Mike B

1
En RHEL 5 y 6, he encontrado que poner /bin/setterm -blank 0 -powerdown 0 -powersave offen /etc/rc.localque funcionan muy bien. En RHEL 7, sin embargo, fallaría. Agregar consoleblank=0a los parámetros del kernel funciona en esa plataforma.
David C.

77
Tenga en cuenta que en realidad no tiene que ejecutarse settermen una consola virtual. También puede redirigirlo a él: setterm -blank 0 > /dev/tty1funciona bien. O puede utilizar setterm -blank < /dev/tty1para consultar el valor actual de tty1 o setterm -blank force < /dev/tty1para forzar la supresión.
Alexander Amelkin el

@AlexanderAmelkin: los redireccionamientos a / desde / dev / tty1 no funcionan en RHEL 7. ¿Qué distribución estaba usando para hacer eso? / dev / tty1 es de hecho la consola local, pero ni eso ni / dev / console parecían hacer nada.
Paul

15

Intenta usar esto:

setterm -blank

1
@markus_b: así que agregue este comando a un script de inicio (algo así como /etc/init/markus-console.confsi usa Upstart, o /etc/init.d/markus-console.shmás enlaces simbólicos /etc/rd?.dpara SysVinit, no sé las ubicaciones reales de SuSE).
Gilles 'SO- deja de ser malvado'

2
@mattdm, no es cierto, systemdgeneralmente viene con un rc-localservicio de compatibilidad, o puede agregar fácilmente servicios personalizados ...
maxschlepzig

3
@mattdm ¿Por qué no podrías escribir una unidad que ejecuta ese comando?
kyrias

1
CONSEJO: Salga de tmux primero, o esto no funcionará.
Cody Hess


14

De acuerdo con: https://wiki.archlinux.org/index.php/Display_Power_Management_Signaling#DPMS_Interaction_in_a_console_with_setterm

Evitar que la pantalla se apague (en la consola)

$ setterm -blank 0 -powerdown 0

Alternativamente, puede deshabilitar la supresión de la consola de forma permanente con el siguiente comando:

# echo -ne "\033[9;0]" >> /etc/issue


3
La segunda solución funciona de maravilla en Marvell ARM Debian. Todas las demás soluciones no hacen nada.
Alexey Sviridov

13

He implementado y probado la siguiente configuración, que funciona bien en sles10, mi caballo de batalla en este momento.

En

/etc/init.d/boot.local

añadir

setterm -blank

Parece que eso es todo lo que se necesita. Gracias por Uku Loskit y Gilles por el impulso en la dirección correcta.


1
He editado su respuesta sin piedad, así que no dude en retroceder si no le gusta. Además, acepte su respuesta porque es la solución real. No debe aceptar una respuesta solo porque está agradecido de que lo haya llevado a la respuesta real, si en realidad hay una mejor respuesta.
tshepang

Lo siento, me gusta la versión original mejor.
markus_b

Tuve que agregar las respuestas más votadas -powersave off ya que el ipmi en mi sistema se volvió estúpido si no tenía las dos partes de esto. Lamentablemente, no mantiene la configuración entre usos y cuando estas características entran en acción, la ventana aparece en primer plano y comienza a recorrer la ventana a través de aproximadamente 4 tamaños diferentes una vez por segundo o 2, lo que hace que sea casi imposible atrapar la ventana y cambiar su tamaño manualmente. saque el término del ahorro de energía :(
Kendrick

13

La única solución permanente es agregar consoleblank=0a la línea de comandos del núcleo. Puede ver el valor (que por defecto es 600 segundos) en:

/sys/module/kernel/parameters/consoleblank

(tenga en cuenta que el archivo es de solo lectura). La única forma de cambiar el valor de consoleblank es reiniciar con la nueva opción de línea de comandos del kernel.


3
La última oración es incorrecta: no es necesario reiniciar para cambiar el valor de consoleblank. Mira mi respuesta.
maxschlepzig

No he encontrado que setterm -blank funcione de manera confiable. A veces parece que se restablece después de cerrar sesión o cambiar a otros terminales virtuales.
amcnabb

Para agregar esta configuración permanente con grub, edite /boot/grub/grub.conf y agregue consoleblank = 0 a las líneas que comienzan con "kernel / boot / vmlinuz ...". Luego reiniciar.
Hoylen

1
"solo" parece una palabra de cadena aquí ...
notlesh

5

Si solo desea evitar que la pantalla se quede en blanco después del inicio de sesión del usuario, solo necesita agregarla setterm -powersave off -blank 0a los $HOME/.bash_profileusuarios respectivos.


5

Estaba realmente abrumado por este problema. Todos los trucos anteriores con el uso de setterm y la redirección de / a / dev / tty0 no funcionaron desde mi ssh.

Entonces me di cuenta de una forma de deshabilitarlo:

TERM=linux setterm -blank 0 -powerdown 0  -powersave off >/dev/tty0 </dev/tty0

TERM = linux reemplaza el TERM predeterminado (que es xterm-256color en mi máquina) y ayuda a setterm a consultar los parámetros adecuados desde tty0.

Puede verificar el resultado por

cat /sys/module/kernel/parameters/consoleblank

Debería ser 0. Si es 600, el truco no ha funcionado.


3

/usr/bin/setterm -powerdown 0 podría ayudar también

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.