ytooyamaのブログ

サーバ構築とか、仕事で発見したこととか、趣味のこととかを書いています。

GRUB2のvideoでCUI解像度変更がうまく設定できない事象にハマった

RHEL9で解像度変更するには、次にあるように二つの方法があるのですが

access.redhat.com

同じような設定をRocky Linux 9.3で次のように実行しても

sudo vi /etc/default/grub
...
GRUB_CMDLINE_LINUX="... video=1024x768"

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

再起動後も解像度が高い状態が続きました。解像度が高すぎて目が痛ぇー

何度設定しても穴が開くほど設定を見直しても間違いはなさそう。 ハッと思ってコマンドパラメーターがきちんと設定されているか確認してみたところ、解像度の設定が反映されていない!

$ cat /proc/cmdline 
BOOT_IMAGE=(hd2,gpt2)/vmlinuz-5.14.0-362.8.1.el9_3.x86_64 root=/dev/mapper/rl-root ro crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M resume=/dev/mapper/rl-swap rd.lvm.lv=rl/root rd.lvm.lv=rl/swap rhgb quiet intel_iommu=off

症状で調べたところ、次のスレッドを見つけました。

forums.rockylinux.org

バージョン9.2まではちゃんと反映されるのだけど、バージョン9.3にするとGRUB2の設定が反映されなくなるとのこと。 このバージョンのGRUB2の問題でしょうか。

スレッドにあった回避策である--update-bls-cmdlineをつけて実行してみました。 結果解像度の設定がきちんと行われ、再起動後の解像度が変わりました。コマンドラインオプションにも、videoの設定が今度は含まれていました。

# grub2-mkconfig --update-bls-cmdline -o /etc/grub2.cfg
# reboot
$ cat /proc/cmdline 
BOOT_IMAGE=(hd2,gpt2)/vmlinuz-5.14.0-362.8.1.el9_3.x86_64 root=/dev/mapper/rl-root ro crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M resume=/dev/mapper/rl-swap rd.lvm.lv=rl/root rd.lvm.lv=rl/swap rhgb quiet intel_iommu=off video=1024x768

このオプションは「BLS cmdline argsをdefault argsで上書きする」オプションだそうです。 現在Rocky Linux 9もバージョン9.4がリリースされており、アップデートすれば改善される問題の可能性があるのですが、ちょっとアプリケーションの都合で9.3が必要なんですよね。そんな時はこの方法で一応回避できるようです。

RHELで経験したことがない問題だったのですが、よく考えたら偶数リリースしか使ったことがないことを思い出しました。 RHELは例外はあるものの、基本的に偶数リリースはサポート期間が長いためです。今日は事情があってRocky Linux を使ってます。

access.redhat.com

このブログサイトはJavaScriptを使っていますが、読み込んでいるJavaScriptは全てはてなが提供しているものであり、筆者が設置しているものではありません。