Grub2 - Insmod Error / part_gpt

Hi Everyone! I’ve installed a grub2 theme (https://github.com/shvchk/fallout-grub-theme), everything went well, no issues. Thing is, when I tried to change the Grub resolution, I’ve edit /boot/grub2/grub.cfg and change ’ set gfxmode=auto ’ to ’ set gfxmode=1920x1080’, save as sudo, then when I try to apply the changes, I get the following error:

╰─$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg 1 ↵**[sudo] password for root: **
insmod: ERROR: could not load module part_gpt: No such file or directory

“part_gpt” mod is located in /boot/grub2/x86_64-efi, but it seems that grub2 fails to load the mod (command is “insmod part_gpt”).

Where can be the problem located? I’ve try to revert the changes I’ve made but got same results.

I’ll appreciate any idea/solution/comment.

Thanks!

Cheers,
Miguel.

It is unclear what you are doing there.

If I use:

grep part_gpt /boot/grub2/grub.cfg

I get many lines of output. And I don’t get error messages about it when running “grub2-mkconfig”.

However, if you are booting with “shim.efi”, then the use of “insmod” is blocked. However, “part_gpt” is preloaded into grub (into “/boot/efi/EFI/opensuse/grub.efi”) so this does not cause problems.

If you are not using “shim.efi” (if you are instead using “grubx64.efi” for booting), then “insmod” should work.

Hi @nrickert, thanks for replying, I just tried to change grub screen resolution, but I think I found the issue.

Somehow I paste “/boot/grub/grub2” to “/etc/default/grub”. Now I need a clear /etc/default/grub file to replace it.

Both “/boot/grub/grub2” and “/etc/default/grub” are identical, and I remember that they were quite different.

My suggestion:

(1) remove "/etc/default/grub
(2) Do a forced reinstall of grub2 (you can use "update unconditionally in Yast for this).
(3) Run Yast bootloader to set booting as desired (that will update “/etc/default/grub”).

At least that’s what I would try. Or maybe I would just copy “/etc/default/grub” from a similarly configured computer, and then use just step (3).

I copy the file from a Live ISO and now everything is working ! Thanks!

In case someday, someone needs this file, I’ll let a copy here:

If you change this file, run ‘update-grub’ afterwards to update# /boot/grub/grub.cfg.

For full documentation of the options in this file, see:

info -f grub -n ‘Simple configuration’

GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=lsb_release -i -s 2> /dev/null || echo Debian
GRUB_CMDLINE_LINUX_DEFAULT=“maybe-ubiquity”
GRUB_CMDLINE_LINUX=“”

Uncomment to enable BadRAM filtering, modify to suit your needs

This works with Linux (no patch required) and with any kernel that obtains

the memory map information from GRUB (GNU Mach, kernel of FreeBSD …)

#GRUB_BADRAM=“0x01234567,0xfefefefe,0x89abcdef,0xefefefef”

Uncomment to disable graphical terminal (grub-pc only)

#GRUB_TERMINAL=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 `vbeinfo’

#GRUB_GFXMODE=640x480

Uncomment if you don’t want GRUB to pass “root=UUID=xxx” parameter to Linux

#GRUB_DISABLE_LINUX_UUID=true

Uncomment to disable generation of recovery mode menu entries

#GRUB_DISABLE_RECOVERY=“true”

Uncomment to get a beep at grub start

#GRUB_INIT_TUNE=“480 440 1”