Hola
Estoy teniendo el siguiente problema, cuando arranca en una VM un linux, falla xorg, el resto ok. Antes no ocurría.
Mi pregunta es, luego desarrollo como llegué:
¿Dónde guarda la última resolución? o
¿Cómo cambio la resolución actual desde una terminal ssh?
Spoiler/resultado: el problema concreto lo he resuelto, pero me interesarían las respuestas a esas dos preguntas de todos modos.
Van todos los detalles
*) Estoy usando ubuntu server 20.04/xorg/openbox en virtualbox 5.2.44 y venía andando lo más bien, incluso tengo otras virtuales similares que no fallan.
*) ¿Cuál fué el antes y el despues?
**) No he actualizado explícitamente nada ni en el host ni en la vm
**) Podría ser que, los instaladores de stmcubeide y mcuxpressoid que me pidieron root lo hayan hecho al instalar alguna dependencia.
**) Lo que ocurre es que para las IDEs esas, le puse una resolución bastante alta, pero como no me entra en el monitor la pantalla virtualizada. Lo que me extraña es que cuándo la apagué la última vez estaba bien.
*) Si con "sudo systemctl set-default multi-user.target" arranco en modo texto, startx falla igual. El error, que es el mismo en modo gráfico dice ser:
(EE) Failed to load module vboxvideo
que no debe significar nada pues en las virtuales donde anda bien, también está.
**) pasé de 24 a 128 MB de memoria, FALLA, revertí
**) reinstalé con VBoxLinuxAdditions, no pude aún desinstalar realmente, FALLA
*) cómo era muy lenta y tenía 1 cpu, 4GB y me había olvidado de habilitar pae/nx, pasé a 2 cpu, 8GB pae/nx y aunque apuesto a que no tiene nada que ver pero desde ese momento falló, lo revertí, FALLA
*) con el menu de grub le pedi al kernel vga=791 (1024x768x16), pero eso cambia la resolución de la consola hasta que más o menos por acá, cambia a algo que deber ser 1600x1100
[ 2.001815] [drm] VRAM 01000000
[ 2.002229] [TTM] Zone kernel: Available graphics memory: 2013174 KiB
[ 2.002549] [TTM] Initializing pool allocator
[ 2.002798] [TTM] Initializing DMA pool allocator
[ 2.009955] fbcon: vboxvideodrmfb (fb0) is primary device
[ 2.017435] Console: switching to colour frame buffer device 210x65
Entonces es como que tenemos varias resoluciones: la del bios, la de grub, la del kernel que le pasa grub por argumento y la otra. Para grub y kernel hace falta ser root, para la última, llamémosla dinámica, o no hace falta o llama a un programa setuid o lo graba en algún lugar, que es lo que me gustaría saber
*) Tuve la genial idea de usar xrand -s 800x600 en una terminal de ssh conectado a la VM, fantástico, me cambió la resolución del host!!! no quiero distraerles contando como me recuperé... bueno, muy sencillo, xrand -s 1920x1080 y restarar a mano luego la configuración de múltiples pantallas.
*) Tengo otra pista, que es que mientras en la VM que funciona buscaba cambiar la resolución para poder poner ese "1600x1100" de más arriba, tiró errores de falta de memoria y el render quedó en negro, al bajar la resolución se corrigió. En la VM afectada, al cambiar mediante el tamaño de pantalla la resolucion, no lo toma, no se achica.
Tras haber aclarado todo esto, la pregunta viene a ser, esa última resolución, dinámica, dónde se almacena?
Fin de la experiencia
Finalmente, se arregló. Para mi lo más probable es que al haber instalado las IDEs se desacomodó algo. Cuando le dí más memoria no sirvió. Volví para atras. Regeneré los módulos de las guest additions, como no tenía memoria no alcanzó. Finalmente, volví a ponerle más memoria, funcionó.
Gracias y saludos