Console video resolution - what's the "Right" way?

dlasher

Renowned Member
Mar 23, 2011
247
32
93
Since pve v5, I've struggled with getting a usable video resolution on the proxmox console. Especially with servers that have VGA output, proxmox tends to default to the highest possibly supported resolution, often leaving the KVM or rack-mounted-VGA out of range.

Up to this point, I've been able to use the following GRUB settings to force to a lower resolution.

Code:
GRUB_CMDLINE_LINUX_DEFAULT="gfxpayload=text nomodeset"
GRUB_GFXMODE=800x600
GRUB_GFXPAYLOAD_LINUX=keep

However, I've added a couple of NUCs to my lab cluster, and I want to use their iGPU. NoModeSet breaks GVT, which takes me back to unsupported resolutions. It's frustrating to watch the machine boot. It respects the 800x600 till about 3/4ths of the way through the boot, then changes to an unsupported resolution.

So... what's the RIGHT way to force 800x600 without breaking GPU acceleration?


notes:
Code:
root@pve11:~# for p in /sys/class/drm/*/status; do con=${p%/status}; echo -n "${con#*/card?-}: "; cat $p; done
DP-1: connected
DP-2: disconnected
DP-3: disconnected
HDMI-A-1: disconnected
HDMI-A-2: disconnected

root@pve11:~# cat /sys/class/graphics/fb0/modes
U:1920x1080p-0

apt -y install fbset

root@pve11:/etc# fbset 800x600-60

root@pve11:/etc# fbset

mode "800x600"
    geometry 800 600 1920 1080 32
    timings 0 88 40 23 1 128 4
    hsync high
    vsync high
    accel true
    rgba 8/16,8/8,8/0,0/0
endmode

doesn't work -- investigate EFIFB?
 
Last edited:
Did you ever find an answer to this? For me trying to find any info on changing the console resolution is challenging. I'm trying to change the resolution AND set the display to vertical for a vertical monitor. Do you have any suggestions or input? Thank you!
 
Did you ever find an answer to this? For me trying to find any info on changing the console resolution is challenging. I'm trying to change the resolution AND set the display to vertical for a vertical monitor. Do you have any suggestions or input? Thank you!
yes, for me the answer turned out to be forcing the video mode, which I commented on in this thread : https://forum.proxmox.com/threads/changing-host-console-resolution.12408/


Short version - add the following to the END of your GRUB_CMDLINE_LINUX_DEFAULT - then "update-grub" then reboot

Code:
video=1024x768@60

^^ change as appropriate to your mode.

Works perfectly for me, across multiple machines, much better than the "nomodeset" option. I now have both usable consoles AND working iGPU/GVT.
 
Last edited:
yes, for me the answer turned out to be forcing the video mode, which I commented on in this thread : https://forum.proxmox.com/threads/changing-host-console-resolution.12408/


Short version - add the following to the END of your GRUB_CMDLINE_LINUX_DEFAULT - then "update-grub" then reboot

Code:
video=1024x768@60

^^ change as appropriate to your mode.

Works perfectly for me, across multiple machines, much better than the "nomodeset" option. I now have both usable consoles AND working iGPU/GVT.
Does this still work for you? I'm seeing the resolution change in the PiKVM WebRTC window, but I still eventually lose display after it's fully logged in.
 
Just brought up a new node on 8.2, here's what's in my /etc/default/grub:

Code:
..snipped..
GRUB_CMDLINE_LINUX_DEFAULT="intel_iommu=on iommu=pt video=1024x768@60"
GRUB_GFXPAYLOAD_LINUX=keep
GRUB_TERMINAL=console
GRUB_GFXMODE=1024x768
GRUB_INIT_TUNE="480 440 1"
..snipped..
</SNIP>

Works perfectly. Before those, it was borked as usual.
 
THANK YOU!! This helped me fix an issue on my Beelink mini-pc that was getting stuck at "Loading ramdisk" after grub, but otherwise running perfectly (network was fine and all VM/LXC were reachable)

Never seen anything like it in decades of running Linux, and it turned out to be a line in grub.

/etc/default/grub had:
Code:
#GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt video=vesafb:off video=efifb:off initcall_blacklist=sysfb_init"

No idea why, but IIRC it happened after I upgraded the RAM to 64GB. Removed the "off" crap and the blacklist and updated grub, and now I have my TTY console and boot messages back!! :)