Problemas y soluciones con la resolución de pantalla en Ubuntu

Publicado por P. Ruiz en

Normalmente, el núcleo de GNU/Linux detecta correctamente el hardware de nuestra tarjeta gráfica y nos muestra una resolución adecuada tanto en modo gráfico, como en modo texto.

Sin embargo, en algunos casos esto no se cumple. Nos puede pasar cuando trabajamos con ordenadores físicos pero, sobre todo, cuando lo hacemos con máquinas virtuales.

En esos casos, interpretar la salida de algunos comandos puede convertirse en una tarea complicada…

Por ejemplo, aquí vemos cómo se muestra la información proporciona el comando lsblk -fm en una resolución de 800×600 puntos.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-001

Ante esto, podemos hacer dos cosas: sobrevivir con la resolución que se haya fijado de forma predeterminada, o tratar de cambiarla de forma manual, para facilitarnos algo las cosas. Hoy trataremos de hacer lo segundo.

Ajustar la resolución de la pantalla de texto

Cuando se trata de ajustar la resolución de la pantalla en modo texto, tenemos varias opciones. Aún así, la preferida en este momento es recurrir a las variables GRUB_GFXMODE y GRUB_GFXPAYLOAD_LINUX del archivo /etc/default/grub.

Básicamente, la idea consiste en añadir la resolución y la profundidad de color en un formato como este:

GRUB_GFXMODE=1024x768x32
GRUB_GFXPAYLOAD_LINUX=keep

Así, establecemos una resolución de 1024×768 con una profundidad de color de 32 bits, aunque puedes probar con otros valores.

Para realizar los ajustes, editamos el archivo de configuración de GRUB con el editor nano:

sudo nano /etc/default/grub

Como es lógico, usamos sudo para trabajar con privilegios administrativos

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-002

Al momento, tendremos en pantalla el contenido del archivo.

Si te fijas, ya aparece una línea que contiene la variable GRUB_GFXMODE, con un valor predeterminado de 640×480. Sin embargo, se encuentra precedida de un carácter almohadilla (‘#’), lo que la convierte en un comentario y no tiene ningún efecto en la configuración.

Por lo tanto, lo primero será desplazarnos hasta ella y eliminar dicho carácter.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-003

A continuación, cambiamos su valor para ajustarlo al ejemplo de arriba y añadimos la segunda línea. El aspecto final debe ser como en la siguiente imagen.

Cuando lo tengamos, solo tenemos que pulsar las teclas Ctrl + X para salir del editor y asegurarnos de guardar los cambios.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-004

Ya de vuelta en el prompt del sistema, nos falta decirle a GRUB que aplique los cambios que hemos realizado. Lo conseguimos con una orden como esta:

sudo grub-mkconfig -o /boot/grub/grub.cfg

Escribimos la orden y pulsamos la tecla Intro.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-005

… Y cuando se complete la ejecución, ya estaremos listos para reiniciar el sistema y comprobar si los cambios funcionan. Por ejemplo, podemos usar la siguiente orden:

sudo reboot

Como antes, solo tenemos que escribir la orden y pulsar la tecla Intro.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-006

En cuanto comience el nuevo arranque del sistema, ya notarás que las cosas han cambiado.

… Y una vez autenticado, bastará con volver a utilizar la orden del principio para comprobar que ahora resulta mucho más legible.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-007

¿Y si no funciona?

Pues, si no funciona, posiblemente tengas una versión más antigua de GRUB.

En este caso, también editaremos el archivo /etc/default/grub:

sudo nano /etc/default/grub

… pero realizaremos un cambio diferente.

Lo primero será localizar la línea que contiene GRUB_CMDLINE_LINUX_DEFAULT.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-008

Una vez localizada, añadimos entre las comillas un texto como el siguiente:

vga=792

Como puedes ver en la imagen anterior, en mi caso, el campo GRUB_CMDLINE_LINUX_DEFAULT no tiene ningún valor previo. Si lo hubiese, bastaría con escribir el valor de arriba al final de la cadena de argumentos, separado del anterior con un espacio en blanco.

En este caso, el valor 792 representa una resolución de 1024 x 768 y una profundidad de color de 24 bits, pero tienes más opciones, para adaptarlo a tus necesidades. En la siguiente tabla te incluyo las principales:

modos de vídeo VGA

En cualquier caso, una vez completada la edición, volvemos a pulsar las teclas Ctrl + X para salir del editor, asegurándonos de guardar los cambios.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-009

Como antes, cuando estemos de vuelta en el prompt del sistema, nos falta decirle a GRUB que aplique los cambios que hemos realizado. Bastará con volver a ejecutar la orden que usamos antes:

sudo grub-mkconfig -o /boot/grub/grub.cfg

Escribimos la orden y pulsamos la tecla Intro.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-010

… Y cuando se haya ejecutado, reiniciamos el sistema para comprobar si funciona. Por ejemplo, usando de nuevo lo siguiente:

sudo reboot

Como antes, solo tenemos que escribir la orden y pulsar la tecla Intro.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-011

En cuanto comience el nuevo arranque del sistema, ya notarás que las cosas han cambiado.

… Y cuando se complete la carga del sistema, puedes volver a usar el comando lsblk -fm para comprobar que el resultado equivale al del método anterior.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-012

¿Qué significa eso de ‘profundidad de color’?

Cuando decimos que tenemos una profundidad de color de 24 bits, estamos indicando en número de bits que se utilizarán para representar cada punto de color en la pantalla.

Si utilizamos 24 bits, significa que tendremos 224 valores diferentes para representar cada punto de color. En definitiva, estaremos manejando 16.777.216 colores distintos.

Ajustar la resolución del modo gráfico

Si trabajas en Ubuntu con interfaz gráfica, podrás elegir la resolución fácilmente desde su herramienta de configuración.

Basta con elegir la categoría Monitores a la izquierda y desplegar la lista Resolución.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-013

No obstante, hay situaciones donde no es tan sencillo. Por ejemplo, cuando necesitas automatizarlo en un script, o cuando aún no se ha cargado el escritorio y la resolución predeterminada que usa el sistema nos resulta inadecuada.

Imagina, por ejemplo, que estás tratando de instalar el sistema y la resolución detectada por el asistente de instalación ha sido 640 x 480.

En estas condiciones sera complicado que consigamos completar la instalación.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-014

Para casos como este, podemos hacer uso del comando xrandr. Al fin y al cabo, detrás del asistente de instalación, ya se han cargado los componentes básicos del sistema operativo, que le permiten funcionar.

Esto hace que podamos recurrir a la combinación de teclas Alt + Control + T, que hemos utilizado en muchas otras situaciones, para abrir una nueva ventana de terminal.

… Permitiéndonos escribir comandos, antes incluso de iniciar la instalación del sistema.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-015

Si ejecutamos xrandr sin argumentos, obtendremos todas las resoluciones de pantalla, incluida la frecuencia de refresco, que tenemos disponible en nuestro monitor. Por lo tanto, nos limitamos a escribir el nombre del comando y pulsar la tecla Intro.

xrandr

En mi sistema, incluso necesito hacer uso de la barra de desplazamiento para poder verlas todas, aunque eso dependerá de cada caso particular.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-016

xrandr es un comando complejo,que tiene multitud de opciones. Sin embargo, nosotros hoy solo usaremos el argumento -s, que nos permite establecer el tamaño de la pantalla, y el argumento -r, que nos permite fijar la tasa de refresco. Ambos valores debemos elegirlos de la lista anterior.

En nuestro caso, hemos decidido usar una resolución de 1024×768 (como en el apartado anterior) y una tasa de refresco de 60 Hz. Por lo tanto, escribimos lo siguiente:

xrandr -s 1024x768 -r 60

Ten en cuenta que, si los valores no coinciden con alguna entrada de la lista, recibirás un error.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-017

Para saber más sobre el comando xrandr puedes consultar la documentación oficial, por ejemplo, en el sitio web de Ubuntu: https://manpages.ubuntu.com/manpages/bionic/man1/xrandr.1.html.

Si todo es correcto, verás que la ventana ha cambiado de tamaño.

Ya podemos cerrarla y seguir con nuestra tarea anterior.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-018

Verás que ahora ya podemos ver la ventana completa del asistente de instalación, con todas sus opciones…

A partir de aquí, será mucho más cómodo nuestro trabajo.

problemas-y-soluciones-con-la-resolucion-de-pantalla-en-ubuntu-019

Aquí he tratado de mostrarte un caso extremo, pero recuerda que esta técnica podrás utilizarla con el sistema operativo ya instalado, cada vez que lo consideres necesario.

Y con esto completamos el objetivo de este artículo. Espero que te resulte útil.