Bug#1056764: grub-efi-amd64: can't boot with GRUB 2.12~rc1-12
Nicolas Haller
nicolas at boiteameuh.org
Sun Dec 24 03:21:07 GMT 2023
Hi Mate,
Sorry for the delay, I was abroad and wasn't able to work on your questions.
I tried to add the set debug=linux and the rmmod peimage by editing the
command list Debian deploys and this is what I get:
-------
Booting a command line
error: no such module <= I guess that's about the rmmod peimage
Loading Linux 6.5.0-4-and64 ...
loader/efi/linux.c:101:linux: UEFI stub kernel:
loader/efi/linux.c:102:linux: PE/COFF header @ 00000082
loader/efi/linux.c:128:linux: LoadFile2 initrd loading enabled
loader/efi/linux.c:495:linux: kernel file size: 9120128
loader/efi/linux.c:497:linux: kernel numpages: 2227
loader/efi/linux.c:514:linux: kernel @ 0x72a51000
Loading initial ramdisk ...
loader/efi/linux.c:416:linux: Using LoadFile2 initrd loading protocol
Press any key to continue...
-------
And that's it.
Let me know if you need me to do more tests.
Thanks
--
Nicolas
On 2023-11-26 04:01, Mate Kukri wrote:
> Hi Nicolas,
>
> The mechanism used to load the kernel has changed from GRUB 2.06 to
> GRUB 2.12, it is possible that there are unfortunate bugs in either in
> GRUB and/or your firmware that is stopping the new mechanism from
> loading the kernel.
>
> Would you be able to attempt these two things to gather some information?
>
> - Run `set debug=linux`, then `linux
> PATH_TO_KERNEL_THAT_FAILS_TO_BOOT`. The output of the Linux command
> should contain extra information with the debug mode enabled.
>
> - (Make sure to have Secure Boot disabled), then run `rmmod peimage`
> at the GRUB console, and then try running your boot entry (or
> alternatively edit the boot entry with E and add that command on top).
>
> Mate Kukri
>
> On Sat, Nov 25, 2023 at 10:45 PM Nicolas Haller <nicolas at boiteameuh.org> wrote:
>>
>> Package: grub-efi-amd64
>> Version: 2.06-13
>> Severity: critical
>> Justification: breaks the whole system
>>
>> Dear Maintainer,
>>
>> My old laptop (Lenovo 11e) runs Sid and all was right before I updated
>> it the other day (I don't do that very often). After that upgrade, GRUB
>> wasn't able to load any kernel with the pretty much generic error
>> "Error: can't load image". The version of GRUB was 2.12~rc1-12.
>> If I try to boot again, GRUB tells me that I need to load the image
>> first (I guess it somehow ignores the linux command and sends that when
>> trying to load the initrd).
>>
>> I tried to reinstall grub, grub-install /dev/sda, update-grub, reinstall
>> the kernel, update-initramfs from the rescue mode but nothing worked.
>> The "file" command was able to read the vmlinuz file and none seemed
>> truncated. The system has one partition with both / and /boot and isn't
>> running out of space.
>> I did not see any error message during those operation besides GRUB
>> saying it wasn't able to update EFI parameters.
>>
>> I don't know if there is a way to get more logs or error message during
>> the boot explaining why it wasn't able to load the image.
>>
>> I tried to get the last version of GRUB from Bookworm, that is
>> 2.06-13, and now I'm able to boot. The kernel version did not change,
>> the only change I did is to downgrade GRUB (and dependencies apt was
>> asking for).
>>
>> I'm not sure which GRUB package I should use for reporting so I took the
>> one that seems the most specific to my system. Apologies if it is not
>> correct.
>>
>> Let me know if you need more info.
>>
>> Thanks,
>>
>> --
>> Nicolas Haller
>>
>> *** Reporter, please consider answering these questions, where appropriate ***
>>
>> * What led up to the situation?
>> * What exactly did you do (or not do) that was effective (or
>> ineffective)?
>> * What was the outcome of this action?
>> * What outcome did you expect instead?
>>
>> *** End of the template - remove these template lines ***
>>
>>
>> -- Package-specific info:
>>
>> *********************** BEGIN /proc/mounts
>> /dev/sda2 / ext4 rw,relatime,errors=remount-ro 0 0
>> /dev/sda1 /boot/efi vfat rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 0
>> *********************** END /proc/mounts
>>
>> *********************** BEGIN /boot/grub/grub.cfg
>> #
>> # DO NOT EDIT THIS FILE
>> #
>> # It is automatically generated by grub-mkconfig using templates
>> # from /etc/grub.d and settings from /etc/default/grub
>> #
>>
>> ### BEGIN /etc/grub.d/00_header ###
>> if [ -s $prefix/grubenv ]; then
>> set have_grubenv=true
>> load_env
>> fi
>> if [ "${next_entry}" ] ; then
>> set default="${next_entry}"
>> set next_entry=
>> save_env next_entry
>> set boot_once=true
>> else
>> set default="0"
>> fi
>>
>> if [ x"${feature_menuentry_id}" = xy ]; then
>> menuentry_id_option="--id"
>> else
>> menuentry_id_option=""
>> fi
>>
>> export menuentry_id_option
>>
>> if [ "${prev_saved_entry}" ]; then
>> set saved_entry="${prev_saved_entry}"
>> save_env saved_entry
>> set prev_saved_entry=
>> save_env prev_saved_entry
>> set boot_once=true
>> fi
>>
>> function savedefault {
>> if [ -z "${boot_once}" ]; then
>> saved_entry="${chosen}"
>> save_env saved_entry
>> fi
>> }
>> function load_video {
>> if [ x$feature_all_video_module = xy ]; then
>> insmod all_video
>> else
>> insmod efi_gop
>> insmod efi_uga
>> insmod ieee1275_fb
>> insmod vbe
>> insmod vga
>> insmod video_bochs
>> insmod video_cirrus
>> fi
>> }
>>
>> if [ x$feature_default_font_path = xy ] ; then
>> font=unicode
>> else
>> insmod part_gpt
>> insmod ext2
>> set root='hd0,gpt2'
>> if [ x$feature_platform_search_hint = xy ]; then
>> search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
>> else
>> search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
>> fi
>> font="/usr/share/grub/unicode.pf2"
>> fi
>>
>> if loadfont $font ; then
>> set gfxmode=auto
>> load_video
>> insmod gfxterm
>> set locale_dir=$prefix/locale
>> set lang=C
>> insmod gettext
>> fi
>> terminal_output gfxterm
>> if [ "${recordfail}" = 1 ] ; then
>> set timeout=30
>> else
>> if [ x$feature_timeout_style = xy ] ; then
>> set timeout_style=menu
>> set timeout=5
>> # Fallback normal timeout code in case the timeout_style feature is
>> # unavailable.
>> else
>> set timeout=5
>> fi
>> fi
>> ### END /etc/grub.d/00_header ###
>>
>> ### BEGIN /etc/grub.d/05_debian_theme ###
>> insmod part_gpt
>> insmod ext2
>> set root='hd0,gpt2'
>> if [ x$feature_platform_search_hint = xy ]; then
>> search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
>> else
>> search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
>> fi
>> insmod png
>> if background_image /usr/share/desktop-base/emerald-theme/grub/grub-16x9.png; then
>> set color_normal=white/black
>> set color_highlight=black/white
>> else
>> set menu_color_normal=cyan/blue
>> set menu_color_highlight=white/blue
>> fi
>> ### END /etc/grub.d/05_debian_theme ###
>>
>> ### BEGIN /etc/grub.d/10_linux ###
>> function gfxmode {
>> set gfxpayload="${1}"
>> }
>> set linux_gfx_mode=
>> export linux_gfx_mode
>> menuentry 'Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-7d9badd3-db30-4b48-901f-cedca15e9902' {
>> load_video
>> insmod gzio
>> if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
>> insmod part_gpt
>> insmod ext2
>> set root='hd0,gpt2'
>> if [ x$feature_platform_search_hint = xy ]; then
>> search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
>> else
>> search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
>> fi
>> echo 'Loading Linux 6.5.0-4-amd64 ...'
>> linux /boot/vmlinuz-6.5.0-4-amd64 root=UUID=7d9badd3-db30-4b48-901f-cedca15e9902 ro quiet psmouse.synaptics_intertouch=0
>> echo 'Loading initial ramdisk ...'
>> initrd /boot/initrd.img-6.5.0-4-amd64
>> }
>> submenu 'Advanced options for Debian GNU/Linux' $menuentry_id_option 'gnulinux-advanced-7d9badd3-db30-4b48-901f-cedca15e9902' {
>> menuentry 'Debian GNU/Linux, with Linux 6.5.0-4-amd64' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.5.0-4-amd64-advanced-7d9badd3-db30-4b48-901f-cedca15e9902' {
>> load_video
>> insmod gzio
>> if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
>> insmod part_gpt
>> insmod ext2
>> set root='hd0,gpt2'
>> if [ x$feature_platform_search_hint = xy ]; then
>> search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
>> else
>> search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
>> fi
>> echo 'Loading Linux 6.5.0-4-amd64 ...'
>> linux /boot/vmlinuz-6.5.0-4-amd64 root=UUID=7d9badd3-db30-4b48-901f-cedca15e9902 ro quiet psmouse.synaptics_intertouch=0
>> echo 'Loading initial ramdisk ...'
>> initrd /boot/initrd.img-6.5.0-4-amd64
>> }
>> menuentry 'Debian GNU/Linux, with Linux 6.5.0-4-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.5.0-4-amd64-recovery-7d9badd3-db30-4b48-901f-cedca15e9902' {
>> load_video
>> insmod gzio
>> if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
>> insmod part_gpt
>> insmod ext2
>> set root='hd0,gpt2'
>> if [ x$feature_platform_search_hint = xy ]; then
>> search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
>> else
>> search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
>> fi
>> echo 'Loading Linux 6.5.0-4-amd64 ...'
>> linux /boot/vmlinuz-6.5.0-4-amd64 root=UUID=7d9badd3-db30-4b48-901f-cedca15e9902 ro single
>> echo 'Loading initial ramdisk ...'
>> initrd /boot/initrd.img-6.5.0-4-amd64
>> }
>> menuentry 'Debian GNU/Linux, with Linux 6.4.0-3-amd64' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.4.0-3-amd64-advanced-7d9badd3-db30-4b48-901f-cedca15e9902' {
>> load_video
>> insmod gzio
>> if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
>> insmod part_gpt
>> insmod ext2
>> set root='hd0,gpt2'
>> if [ x$feature_platform_search_hint = xy ]; then
>> search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
>> else
>> search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
>> fi
>> echo 'Loading Linux 6.4.0-3-amd64 ...'
>> linux /boot/vmlinuz-6.4.0-3-amd64 root=UUID=7d9badd3-db30-4b48-901f-cedca15e9902 ro quiet psmouse.synaptics_intertouch=0
>> echo 'Loading initial ramdisk ...'
>> initrd /boot/initrd.img-6.4.0-3-amd64
>> }
>> menuentry 'Debian GNU/Linux, with Linux 6.4.0-3-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.4.0-3-amd64-recovery-7d9badd3-db30-4b48-901f-cedca15e9902' {
>> load_video
>> insmod gzio
>> if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
>> insmod part_gpt
>> insmod ext2
>> set root='hd0,gpt2'
>> if [ x$feature_platform_search_hint = xy ]; then
>> search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
>> else
>> search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
>> fi
>> echo 'Loading Linux 6.4.0-3-amd64 ...'
>> linux /boot/vmlinuz-6.4.0-3-amd64 root=UUID=7d9badd3-db30-4b48-901f-cedca15e9902 ro single
>> echo 'Loading initial ramdisk ...'
>> initrd /boot/initrd.img-6.4.0-3-amd64
>> }
>> menuentry 'Debian GNU/Linux, with Linux 6.1.0-10-amd64' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.1.0-10-amd64-advanced-7d9badd3-db30-4b48-901f-cedca15e9902' {
>> load_video
>> insmod gzio
>> if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
>> insmod part_gpt
>> insmod ext2
>> set root='hd0,gpt2'
>> if [ x$feature_platform_search_hint = xy ]; then
>> search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
>> else
>> search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
>> fi
>> echo 'Loading Linux 6.1.0-10-amd64 ...'
>> linux /boot/vmlinuz-6.1.0-10-amd64 root=UUID=7d9badd3-db30-4b48-901f-cedca15e9902 ro quiet psmouse.synaptics_intertouch=0
>> echo 'Loading initial ramdisk ...'
>> initrd /boot/initrd.img-6.1.0-10-amd64
>> }
>> menuentry 'Debian GNU/Linux, with Linux 6.1.0-10-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.1.0-10-amd64-recovery-7d9badd3-db30-4b48-901f-cedca15e9902' {
>> load_video
>> insmod gzio
>> if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
>> insmod part_gpt
>> insmod ext2
>> set root='hd0,gpt2'
>> if [ x$feature_platform_search_hint = xy ]; then
>> search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 7d9badd3-db30-4b48-901f-cedca15e9902
>> else
>> search --no-floppy --fs-uuid --set=root 7d9badd3-db30-4b48-901f-cedca15e9902
>> fi
>> echo 'Loading Linux 6.1.0-10-amd64 ...'
>> linux /boot/vmlinuz-6.1.0-10-amd64 root=UUID=7d9badd3-db30-4b48-901f-cedca15e9902 ro single
>> echo 'Loading initial ramdisk ...'
>> initrd /boot/initrd.img-6.1.0-10-amd64
>> }
>> }
>>
>> ### END /etc/grub.d/10_linux ###
>>
>> ### BEGIN /etc/grub.d/20_linux_xen ###
>>
>> ### END /etc/grub.d/20_linux_xen ###
>>
>> ### BEGIN /etc/grub.d/25_bli ###
>> if [ "$grub_platform" = "efi" ]; then
>> insmod bli
>> fi
>> ### END /etc/grub.d/25_bli ###
>>
>> ### BEGIN /etc/grub.d/30_os-prober ###
>> ### END /etc/grub.d/30_os-prober ###
>>
>> ### BEGIN /etc/grub.d/30_uefi-firmware ###
>> menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
>> fwsetup
>> }
>> ### END /etc/grub.d/30_uefi-firmware ###
>>
>> ### BEGIN /etc/grub.d/40_custom ###
>> # This file provides an easy way to add custom menu entries. Simply type the
>> # menu entries you want to add after this comment. Be careful not to change
>> # the 'exec tail' line above.
>> ### END /etc/grub.d/40_custom ###
>>
>> ### BEGIN /etc/grub.d/41_custom ###
>> if [ -f ${config_directory}/custom.cfg ]; then
>> source ${config_directory}/custom.cfg
>> elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
>> source $prefix/custom.cfg
>> fi
>> ### END /etc/grub.d/41_custom ###
>> *********************** END /boot/grub/grub.cfg
>>
>> *********************** BEGIN /proc/mdstat
>> Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
>> unused devices: <none>
>> *********************** END /proc/mdstat
>>
>> *********************** BEGIN LVM
>> *********************** END LVM
>>
>> *********************** BEGIN /dev/disk/by-id
>> total 0
>> lrwxrwxrwx 1 root root 9 Nov 25 13:11 ata-SAMSUNG_MZ7LN128HCHP-000L1_S1ZMNXAGB59830 -> ../../sda
>> lrwxrwxrwx 1 root root 10 Nov 25 13:11 ata-SAMSUNG_MZ7LN128HCHP-000L1_S1ZMNXAGB59830-part1 -> ../../sda1
>> lrwxrwxrwx 1 root root 10 Nov 25 13:11 ata-SAMSUNG_MZ7LN128HCHP-000L1_S1ZMNXAGB59830-part2 -> ../../sda2
>> lrwxrwxrwx 1 root root 10 Nov 25 13:11 ata-SAMSUNG_MZ7LN128HCHP-000L1_S1ZMNXAGB59830-part3 -> ../../sda3
>> lrwxrwxrwx 1 root root 10 Nov 25 13:11 ata-SAMSUNG_MZ7LN128HCHP-000L1_S1ZMNXAGB59830-part4 -> ../../sda4
>> lrwxrwxrwx 1 root root 9 Nov 25 13:11 usb-SanDisk_Ultra_4C530001270212105552-0:0 -> ../../sdb
>> lrwxrwxrwx 1 root root 10 Nov 25 13:11 usb-SanDisk_Ultra_4C530001270212105552-0:0-part1 -> ../../sdb1
>> lrwxrwxrwx 1 root root 10 Nov 25 13:11 usb-SanDisk_Ultra_4C530001270212105552-0:0-part2 -> ../../sdb2
>> lrwxrwxrwx 1 root root 9 Nov 25 13:11 wwn-0x5002538d00000000 -> ../../sda
>> lrwxrwxrwx 1 root root 10 Nov 25 13:11 wwn-0x5002538d00000000-part1 -> ../../sda1
>> lrwxrwxrwx 1 root root 10 Nov 25 13:11 wwn-0x5002538d00000000-part2 -> ../../sda2
>> lrwxrwxrwx 1 root root 10 Nov 25 13:11 wwn-0x5002538d00000000-part3 -> ../../sda3
>> lrwxrwxrwx 1 root root 10 Nov 25 13:11 wwn-0x5002538d00000000-part4 -> ../../sda4
>> *********************** END /dev/disk/by-id
>>
>> *********************** BEGIN /dev/disk/by-uuid
>> total 0
>> lrwxrwxrwx 1 root root 10 Nov 25 2023 2023-10-07-10-32-09-00 -> ../../sdb1
>> lrwxrwxrwx 1 root root 10 Nov 25 13:11 3c0e00d0-2f4f-4bd4-93ab-89c317415f1c -> ../../sda3
>> lrwxrwxrwx 1 root root 10 Nov 25 13:11 7d9badd3-db30-4b48-901f-cedca15e9902 -> ../../sda2
>> lrwxrwxrwx 1 root root 10 Nov 25 13:11 8A8B-ABC9 -> ../../sda1
>> lrwxrwxrwx 1 root root 10 Nov 25 13:11 CC5C8EC95C8EADB0 -> ../../sda4
>> lrwxrwxrwx 1 root root 10 Nov 25 13:11 DEB0-0001 -> ../../sdb2
>> *********************** END /dev/disk/by-uuid
>>
>> -- System Information:
>> Debian Release: trixie/sid
>> APT prefers stable
>> APT policy: (500, 'stable')
>> Architecture: amd64 (x86_64)
>> Foreign Architectures: i386
>>
>> Kernel: Linux 6.5.0-4-amd64 (SMP w/4 CPU threads; PREEMPT)
>> Kernel taint flags: TAINT_UNSIGNED_MODULE
>> Locale: LANG=en_CA.UTF-8, LC_CTYPE=en_CA.UTF-8 (charmap=UTF-8), LANGUAGE=en_CA:en
>> Shell: /bin/sh linked to /usr/bin/dash
>> Init: systemd (via /run/systemd/system)
>> LSM: AppArmor: enabled
>>
>> Versions of packages grub-efi-amd64 depends on:
>> ii debconf [debconf-2.0] 1.5.82
>> ii grub-common 2.06-13
>> ii grub-efi-amd64-bin 2.06-13
>> ii grub2-common 2.06-13
>> ii ucf 3.0043+nmu1
>>
>> grub-efi-amd64 recommends no packages.
>>
>> grub-efi-amd64 suggests no packages.
>>
>> -- debconf information:
>> grub2/kfreebsd_cmdline:
>> * grub2/update_nvram: true
>> * grub2/enable_os_prober: false
>> grub2/kfreebsd_cmdline_default: quiet
>> * grub2/linux_cmdline_default: quiet psmouse.synaptics_intertouch=0
>> * grub2/linux_cmdline:
>> * grub2/force_efi_extra_removable: true
>> grub2/device_map_regenerated:
>>
>> _______________________________________________
>> Pkg-grub-devel mailing list
>> Pkg-grub-devel at alioth-lists.debian.net
>> https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/pkg-grub-devel
>
More information about the Pkg-grub-devel
mailing list