# Multi-user.target screen resolution

**URL:** <https://forums.rockylinux.org/t/multi-user-target-screen-resolution/18051>\
**Category:** Rocky Linux Help & Support\
**Created:** [March 28, 2025, 12:37pm UTC](https://forums.rockylinux.org/t/multi-user-target-screen-resolution/18051 "2025-03-28T12:37:21Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![lawtonca](https://avatars.discourse-cdn.com/v4/letter/l/90db22/32.png) [@lawtonca](https://forums.rockylinux.org/u/lawtonca)\
**Post date:** [March 28, 2025, 12:37pm UTC](https://forums.rockylinux.org/t/multi-user-target-screen-resolution/18051/1 "2025-03-28T12:37:21Z")

</div>

I’ve installed a simple rocky 9 without a gui, to go into a DC and be used with a simple rack monitor.  
The problem is when the system boots, it displays the grub menu at 800x600, but as soon as it starts loading the kernel the screen resolution changes to 1920x1200. This is far to much for my simple rack monitor. I can get onto it using IPMI but have to scroll around the screen on my laptop to see anything.  
I don’t have the xwindows system, it is just the text console showing the text login: prompt so it certainly doesn’t need to be any more than 800x600. How can I change this?

I have found articles that say to change GRUB\_GFXMODE and GRUB\_GFXPAYLOAD\_LINUX in /etc/default/grub and then run ‘grub2-mkconfig \> /boot/efi/EFI/rocky/grub.cfg’ or ‘grub2-mkconfig \> /boot/grub2/grub.cfg’ or to add ‘video=800x600’ to the kernel option. And of course many thing referring to xrandr and settings in xwindows that I don’t have installed. Nothing seems to have any effect. Immediately after the grub screen the resolution changes to 1920x1200 and my poor old monitor says ‘out of range’

I would be very grateful if anyone has any insights into how to change this so that when I inevitebly need to use the console I can  
Thank you  
Chris

---

<div class="post-metadata">

**Author:** ![iwalker](https://sea2.discourse-cdn.com/flex020/user_avatar/forums.rockylinux.org/iwalker/32/2599_2.png) [@iwalker](https://forums.rockylinux.org/u/iwalker)\
**Post date:** [March 28, 2025, 12:52pm UTC](https://forums.rockylinux.org/t/multi-user-target-screen-resolution/18051/2 "2025-03-28T12:52:41Z")

</div>

Try:

```auto
grubby --update-kernel=ALL --args="video=800x600"

```

or you can disable KMS which is responsible for it so:

```auto
grubby --update-kernel=ALL --args="nomodeset"

```

and it will set to VGA. Although it’s more recommended to use the video option.

---

<div class="post-metadata">

**Author:** ![iwalker](https://sea2.discourse-cdn.com/flex020/user_avatar/forums.rockylinux.org/iwalker/32/2599_2.png) [@iwalker](https://forums.rockylinux.org/u/iwalker)\
**Post date:** [March 28, 2025, 12:57pm UTC](https://forums.rockylinux.org/t/multi-user-target-screen-resolution/18051/3 "2025-03-28T12:57:53Z")

</div>

I’ve just done this on my EL9 system to verify the first method with `video=800x600`, see below screenshots before and after:

 ![Screenshot from 2025-03-28 13-55-55](https://us1.discourse-cdn.com/flex020/uploads/rockylinux/original/2X/3/33a5a5e6f270f6aa8cf70fba37dd87ab19f5804f.png)

 ![Screenshot from 2025-03-28 13-56-52](https://us1.discourse-cdn.com/flex020/uploads/rockylinux/original/2X/3/313980604ca8baa39fc87534e2d3923175de6764.png)

---

<div class="post-metadata">

**Author:** ![lawtonca](https://avatars.discourse-cdn.com/v4/letter/l/90db22/32.png) [@lawtonca](https://forums.rockylinux.org/u/lawtonca)\
**Post date:** [March 28, 2025, 1:13pm UTC](https://forums.rockylinux.org/t/multi-user-target-screen-resolution/18051/4 "2025-03-28T13:13:48Z")

</div>

Awesome!! Thank you so much. That has worked

---

<div class="post-metadata">

**Author:** ![jlehtone](https://avatars.discourse-cdn.com/v4/letter/j/e9a140/32.png) [@jlehtone](https://forums.rockylinux.org/u/jlehtone)\
**Post date:** [March 28, 2025, 2:26pm UTC](https://forums.rockylinux.org/t/multi-user-target-screen-resolution/18051/5 "2025-03-28T14:26:24Z")

</div>

> [@lawtonca](#):
>
> I have found articles that say to change GRUB\_GFXMODE and GRUB\_GFXPAYLOAD\_LINUX in /etc/default/grub and then run ‘grub2-mkconfig \> /boot/efi/EFI/rocky/grub.cfg’ or ‘grub2-mkconfig \> /boot/grub2/grub.cfg’

Note: Some of that does not apply to Rocky 9, i.e. will probably break something. That is the danger of dated “info”.

In principle, the `grub2-mkconfig` computes a new `grub.cfg`. It does, but it does also “update grubenv file”, and could (but does not by default) “overwrite BLS cmdline args”.

The ‘video=800x600’ and ‘nomodeset’ are “BLS cmdline args” and would be in ‘GRUB\_CMDLINE\_LINUX’ of the `/etc/default/grub`. Yes, `grub2-mkconfig --update-bls-cmdline` could update them like the `grubby --update-kernel=ALL --args="video=800x600"`, but there is no need to touch the grub.cfg, _if_ BLS cmdline args are all you need to update. Hence the ‘grubby’ is more on point.

* * *

The grub2-mkconfig has also output option as alternative for the redirection:

```bash
grub2-mkconfig > something
grub2-mkconfig -o something

```

That difference is subtle and _usually_ should not matter.

What _does_ matter is the `/boot/efi/EFI/rocky/grub.cfg` vs `/boot/grub2/grub.cfg`

Rocky 9 may have `/boot/efi/EFI/rocky/grub.cfg`, but that is not _the_ `grub.cfg`  
_The_ `grub.cfg` in Rocky 9 is always (at least on x86\_64) `/boot/grub2/grub.cfg`  
Therefore, overwriting the `/boot/efi/EFI/rocky/grub.cfg` can cause confusion later.

* * *

I’m not expert on GRUB, but I guess that the GFXMODE and GFXPAYLOAD\_LINUX affect primarily how GRUB shows its own menu and perhaps what the kernel shows initially. Hovewer, there is also a fact that kernel starts drawing messages in some mode, but at some point in boot it loads different/actual graphics driver and the mode does clearly change (with some drivers – for example Nouveau vs proprietary NVidia). It is the latter mode that you want to control and therefore the ‘video’ option (which kernel probably passes to the driver) seems more on point.

---

<div class="post-metadata">

**Author:** ![hs303](https://avatars.discourse-cdn.com/v4/letter/h/e47774/32.png) [@hs303](https://forums.rockylinux.org/u/hs303)\
**Post date:** [March 29, 2025, 9:53am UTC](https://forums.rockylinux.org/t/multi-user-target-screen-resolution/18051/6 "2025-03-29T09:53:44Z")

</div>

> [@iwalker](#):
>
> `grubby --update-kernel=ALL `

I guess to make the changes persistent across new kernel installations you also need to add the arguments to `/etc/kernel/cmdline`. Post install scripts of kernel packages execute `kernel-install` which relies on this file to create a new kernel entry (`man 8 kernel-install)`.

---

<div class="post-metadata">

**Author:** ![iwalker](https://sea2.discourse-cdn.com/flex020/user_avatar/forums.rockylinux.org/iwalker/32/2599_2.png) [@iwalker](https://forums.rockylinux.org/u/iwalker)\
**Post date:** [March 29, 2025, 10:30am UTC](https://forums.rockylinux.org/t/multi-user-target-screen-resolution/18051/7 "2025-03-29T10:30:31Z")

</div>

I just used the command I gave in my post with the video arguments and after rebooting it was OK. That would suggest it is persistent, otherwise it wouldn’t have changed the resolution on reboot.

---

<div class="post-metadata">

**Author:** ![hs303](https://avatars.discourse-cdn.com/v4/letter/h/e47774/32.png) [@hs303](https://forums.rockylinux.org/u/hs303)\
**Post date:** [March 29, 2025, 10:35am UTC](https://forums.rockylinux.org/t/multi-user-target-screen-resolution/18051/8 "2025-03-29T10:35:44Z")

</div>

What I mean, the settings will not apply to the new kernel when the next kernel update is due. This is what I think.

---

<div class="post-metadata">

**Author:** ![iwalker](https://sea2.discourse-cdn.com/flex020/user_avatar/forums.rockylinux.org/iwalker/32/2599_2.png) [@iwalker](https://forums.rockylinux.org/u/iwalker)\
**Post date:** [March 29, 2025, 11:03am UTC](https://forums.rockylinux.org/t/multi-user-target-screen-resolution/18051/9 "2025-03-29T11:03:06Z")

</div>

Ah yeah gotcha, hmm maybe, I guess we’ll find out soon enough 🙂

---

<div class="post-metadata">

**Author:** ![iwalker](https://sea2.discourse-cdn.com/flex020/user_avatar/forums.rockylinux.org/iwalker/32/2599_2.png) [@iwalker](https://forums.rockylinux.org/u/iwalker)\
**Post date:** [March 29, 2025, 11:37am UTC](https://forums.rockylinux.org/t/multi-user-target-screen-resolution/18051/10 "2025-03-29T11:37:37Z")

</div>

Actually just verified that, after the grubby command, `/etc/kernel/cmdline` is updated:

```auto
root@rh9:~# grubby --update-kernel=ALL --args="video=800x600"

root@rh9:~# cat /etc/kernel/cmdline 
root=/dev/mapper/rhel-root ro rd.lvm.lv=rhel/root fips=1 boot=UUID=928077ae-7a36-4bfb-b37c-fe2d78f920ff video=800x600

```

I then change it to 640x480:

```auto
root@rh9:~# grubby --update-kernel=ALL --args="video=640x480"

root@rh9:~# cat /etc/kernel/cmdline 
root=/dev/mapper/rhel-root ro rd.lvm.lv=rhel/root fips=1 boot=UUID=928077ae-7a36-4bfb-b37c-fe2d78f920ff video=640x480

```

so looks like it will be persistent for new kernels and no manual edits of the file are required.

---

<div class="post-metadata">

**Author:** ![jlehtone](https://avatars.discourse-cdn.com/v4/letter/j/e9a140/32.png) [@jlehtone](https://forums.rockylinux.org/u/jlehtone)\
**Post date:** [March 29, 2025, 2:01pm UTC](https://forums.rockylinux.org/t/multi-user-target-screen-resolution/18051/11 "2025-03-29T14:01:11Z")

</div>

> [@iwalker](#):
>
> grubby --update-kernel=ALL

This (the “ALL”) updates three things:

- The “options” in BLS entries (used during boot)
- The `/etc/kernel/cmdline` (used by 'kernel-install to create a BLS entry)
- The GRUB\_CMDLINE\_LINUX in `/etc/default/grub` (for consistency)

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex020/uploads/rockylinux/original/1X/91b7219eec10e30013422e4df76c1d898711a5d5.svg) [@system](https://forums.rockylinux.org/u/system)\
**Post date:** [May 28, 2025, 2:01pm UTC](https://forums.rockylinux.org/t/multi-user-target-screen-resolution/18051/12 "2025-05-28T14:01:13Z")

</div>

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.
