GRUB選択メニューは機能しますが表示されません。

GRUB選択メニューは機能しますが表示されません。

Thinkpad W541でManjaro / Windows10デュアルブート設定を完了したところ、奇妙な問題が発生しました。システムを起動するたびにGRUBメニューは表示されず、Lenovoのロゴはそのまま残ります。ただし、キーボードを使用して引き続き操作できるため、GRUBが実際にバックグラウンドで実行されていることを確認できます(ディスプレイにLenovoのロゴが表示されているにもかかわらず)。たとえば、「Enter」キーを押すとManjaroから直接起動し、「Down」キーを押してから「Enter」キーを押すとWindows 10で起動します。これは、GRUBが実行されているがメニュー・インターフェースが表示されないことを示します。

オンラインで確認したところ、他のユーザー(別のディストリビューションを使用している)が同じ問題を抱えているリンクが見つかりました。彼らはこれがGRUBのバグであると主張していますが、Manjaroフォーラムで同様の苦情を見つけることができないため、少し疑いがあります。

私のシステムに関する簡単な情報は次のとおりです。

ここに画像の説明を入力してください。

/etc/default/grub ファイルの内容も含めます。

GRUB_DEFAULT=0
GRUB_TIMEOUT=60
GRUB_TIMEOUT_STYLE=menu
GRUB_DISTRIBUTOR="Manjaro"
GRUB_CMDLINE_LINUX_DEFAULT="quiet apparmor=1 security=apparmor resume=UUID=2bc98e71-4074-46c4-9ac5-1211bafa25e6 udev.log_priority=3"
GRUB_CMDLINE_LINUX=""

# If you want to enable the save default function, uncomment the following
# line, and set GRUB_DEFAULT to saved.
GRUB_SAVEDEFAULT=true

# Preload both GPT and MBR modules so that they are not missed
GRUB_PRELOAD_MODULES="part_gpt part_msdos"

# Uncomment to enable booting from LUKS encrypted devices
#GRUB_ENABLE_CRYPTODISK=y

# Uncomment to use basic console
GRUB_TERMINAL_INPUT=console

# Uncomment to disable graphical terminal
#GRUB_TERMINAL_OUTPUT=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command 'videoinfo'
GRUB_GFXMODE=auto

# Uncomment to allow the kernel use the same resolution used by grub
GRUB_GFXPAYLOAD_LINUX=keep

# Uncomment if you want GRUB to pass to the Linux kernel the old parameter
# format "root=/dev/xxx" instead of "root=/dev/disk/by-uuid/xxx"
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
GRUB_DISABLE_RECOVERY=true

# Uncomment this option to enable os-prober execution in the grub-mkconfig command
GRUB_DISABLE_OS_PROBER=false

# Uncomment and set to the desired menu colors.  Used by normal and wallpaper
# modes only.  Entries specified as foreground/background.
GRUB_COLOR_NORMAL="light-gray/black"
GRUB_COLOR_HIGHLIGHT="green/black"

# Uncomment one of them for the gfx desired, a image background or a gfxtheme
#GRUB_BACKGROUND="/usr/share/grub/background.png"
GRUB_THEME="/usr/share/grub/themes/manjaro/theme.txt"

# Uncomment to get a beep at GRUB start
#GRUB_INIT_TUNE="480 440 1"

# Uncomment to ensure that the root filesystem is mounted read-only so that
# systemd-fsck can run the check automatically. We use 'fsck' by default, which
# needs 'rw' as boot parameter, to avoid delay in boot-time. 'fsck' needs to be
# removed from 'mkinitcpio.conf' to make 'systemd-fsck' work.
# See also Arch-Wiki: https://wiki.archlinux.org/index.php/Fsck#Boot_time_checking
#GRUB_ROOT_FS_RO=true

私は初めてLinuxに触れたので、誰でも私を助けることができればいいでしょう。ありがとうございます。

答え1

何らかの理由でGRUBが間違ったビデオバックエンドを選択したようです。

考えられる理由の1つは、システムがUEFIスタイルのブートプロセスを使用している場合にのみ適用されます。したがって、システム/sys/firmware/efi/にディレクトリがない場合は、レガシーBIOSスタイルで起動し、この答えは適用されません。

ただし/sys/firmware/efi/、システムに存在する場合、システムはUEFIモードで起動します。 UEFIには、GOPとUGAという2つのグラフィックプログラミングインタフェースがありました。 UGAは以前のEFI 1.0仕様からUEFIの継承ですが、GOPはUEFIの新しい仕様です。実際、AppleデバイスのみがUEFIでUGAを使用しているのに対し、UEFIの他のすべてのユーザーはGOPに標準化されています。

(詳しくは下記をご覧ください。SuperUser.SEに関するこの質問.)

システムがブートローダに2つのグラフィカルインターフェイスを提供しているように見えますが、そのうちの1つだけが実際に動作している場合は、GRUBが間違ったインターフェイスを選択する可能性があります。

これが問題の場合は、ファイルの末尾に次の行を追加して問題を解決できます/etc/default/grub

# Video backend
GRUB_VIDEO_BACKEND=efi_gop

次に、実行してからデフォルトのgrub-mkconfig -o /boot/grub/grub.cfgGRUB設定ファイルを更新します/boot/grub/grub.cfg

UGAグラフィックプログラミングインターフェースを試したい場合efi_gopefi_uga

関連情報