Resolución monitor
Debian 11
Para conocer la pantalla conectada y las posibles resoluciones admitidas haremos
# xrandr
Para cambiar a una resolución de las enumeradas por el comando anterior, por ejemplo 1400×1050
haremos
xrandr -s 1400x1050
Pero por desgracia suele ocurrir que la resolución que queremos no está. Para crear una nueva resolución se necesitan unos datos “muy extraños” como son la frecuencia vertical, horizontal, máxima, mínima, total… Pero Linux también tiene la solución con el comando “cvt”, una utilidad para calcular los modos VESA necesarios para alcanzar una resolución. Calculamos con
# cvt x y z
Donde la x
y la y
son los datos de la resolución y z
la frecuencia de refresco en Hz, por ejemplo
# cvt 1280 1024
Aparecerá algo como esto:
# 1280x1024 59.89 Hz (CVT 1.31M4) hsync: 63.67 kHz; pclk: 109.00 MHz Modeline "1280x1024_60.00" 109.00 1280 1368 1496 1712 1024 1027 1034 1063 -hsync +vsync
Si lo quisiera a 85 Hz haría
# cvt 1280 1024 85
Dando
# 1280x1024 84.84 Hz (CVT 1.31M4) hsync: 91.46 kHz; pclk: 159.50 MHz Modeline "1280x1024_85.00" 159.50 1280 1376 1512 1744 1024 1027 1034 1078 -hsync +vsync
Ahora copiamos la información de la linea Modeline para crear un nuevo modo
xrandr --newmode "1280x1024_60.00" 109.00 1280 1368 1496 1712 1024 1027 1034 1063 -hsync +vsync
Luego toca asignarlo a la pantalla en cuestión, cuyo nombre nos habrá salido en la segunda línea del xrandr, por ejemplo VGA-1
xrandr --addmode VGA-1 1280x1024_60.00
Y finalmente lo aplicamos
xrandr --output VGA-1 --mode 1280x1024_60.00
Todo esto puede hacerse con un script:
- resolucion.sh
#!/usr/bin/env bash xrandr --newmode "1280x1024_60.00" 109.00 1280 1368 1496 1712 1024 1027 1034 1063 -hsync +vsync xrandr --addmode VGA-1 1280x1024_60.00 xrandr --output VGA-1 --mode 1280x1024_60.00
Como alternativa, también podría generarse el modeline con gtf
en lugar de con cvt
.
Cambios permanentes
Lo escrito a continuación no funciona del todo…
Hasta aquí todo muy bonito pero hay un problema, al reiniciar el equipo las configuraciones se pierden. No me parece buena idea ajustar el refresco de pantalla cada vez que entramos en el equipo, tiene que haber una forma de dejarlo fijo. Vamos a ello.
En Linux hay un fichero de configuración que poco a poco y a medida que el hardware fue mejor reconocido por las distribuciones, fue quedando en el olvido. Su nombre con ruta completa es /etc/X11/xorg.conf
. El fichero de configuración de todos los parámetros que hacen que el entorno gráfico funcione.
En LXDE (entorno de escritorio X11 ligero) el fichero no existe, con lo cual hay que crearlo, cosa que no es fácil. Una posible solución es hacer lo siguiente:
- Nos salimos del entorno gráfico, vamos a una terminal pulsando CTRL + ALT + F1. Recordar que el entorno gráfico es CTRL + ALT + F7.
- Nos validamos y apagamos el entorno gráfico:
# /etc/init.d/lightdm stop
- A continuación ejecutamos la configuración de X:
# X -configure
- Se crea un fichero de nombre
xorg.conf.new
el cual es el que debemos mover a su sitio y modificar:# mv xorg.conf.new /etc/X11/xorg.conf
- Si todo está correcto y queremos volver a arrancar el entorno gráfico:
# /etc/init.d/lightdm start
Configurar xrandr para que arranque al inicio. Este método varía dependiendo del entorno de escritorio que utilices (gnome, kde, xfce).
- En openbox, agrega el comando xrandr en
~/.config/openbox/autostart.sh
- En fluxbox, realiza la misma operación pero en el archivo
~/.fluxbox/startup
- Dependiendo del entorno de escritorio que utilices, puedes agregar xrandr en
~/.xinit