Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Fresh Gentoo Install - Trouble with ALL bootloaders
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Installing Gentoo
View previous topic :: View next topic  
Author Message
skips
n00b
n00b


Joined: 24 Mar 2025
Posts: 15

PostPosted: Mon Mar 24, 2025 4:48 pm    Post subject: Fresh Gentoo Install - Trouble with ALL bootloaders Reply with quote

Hello Gentoo Community,

I've been a gentoo user for at least the last 15 years, mainly on my home server environment. I have decided to upgrade my homelab server after 10 years of running (more or less) PC hardware and I purchased a used Dell R540 rack-mounted server with dual Xeon 6138 Gold CPUs.

I must say the gentoo handbook has become a wonderful document and following it with my fresh install was a bliss.

However, I cannot seem to get my system to boot - my server shows nothing else than "booting gentoo failed".

I have compiled my own kernel using gentoo-sources like I have been doing since my early days. My experience with "new" boot loaders have been very limited as I am still using lilo (with a GPT partition) 8O on my current operational machine.

On this new install I set my system to UEFI in the BIOS setting and tried grub, systemd-boot and EFI stub. The pattern is always the same: Once I reboot from the liveCD, booting my installation fails with "booting <label> failed".

I have installed gentoo on a 1TB NVMe module installed with a PCIe adapter.

Hoping for some hints how to solve this. I think the easiest is to use Grub going forward and make this work somehow.

From the top, I have created a GPT partition as per the handbook:

Code:
Device            Start        End    Sectors   Size Type
/dev/nvme0n1p1     2048    2099199    2097152     1G EFI System
/dev/nvme0n1p2  2099200   69208063   67108864    32G Linux swap
/dev/nvme0n1p3 69208064 1953525134 1884317071 898.5G Linux root (x86-64)


The EFI partition is formatted with fat and the system partition is XFS-formatted.

installkernel is built with grub USE flag and all others have been disabled.

This is the output of "make install":

Code:
iucode_tool: Writing selected microcodes to: /boot/intel-uc.img
'/boot/grub/grub.cfg' -> '/boot/grub/grub.cfg~'
Generating grub configuration file ...
Found linux image: /efi/EFI/Gentoo/vmlinuz-6.12.16-gentoo.efi
Found initrd image: /efi/EFI/Gentoo/intel-uc.img
Found linux image: /efi/EFI/Gentoo/vmlinuz-6.12.16-gentoo-old.efi
Found initrd image: /efi/EFI/Gentoo/intel-uc.img
Found linux image: /boot/vmlinuz-6.12.16-gentoo
Found initrd image: /boot/intel-uc.img /boot/initramfs-6.12.16-gentoo.img
Found linux image: /boot/vmlinuz-6.12.16-gentoo.old
Found initrd image: /boot/intel-uc.img /boot/initramfs-6.12.16-gentoo.img.old
Warning: os-prober will not be executed to detect other bootable partitions.
Systems on them will not be added to the GRUB boot configuration.
Check GRUB_DISABLE_OS_PROBER documentation entry.
Adding boot menu entry for UEFI Firmware Settings ...
Found memtest image: /boot/memtest86plus/memtest64.bios
Found memtest image: /boot/memtest86plus/memtest.efi64
done


Any suggestions from anyone? Thank you!
Back to top
View user's profile Send private message
pingtoo
Veteran
Veteran


Joined: 10 Sep 2021
Posts: 1632
Location: Richmond Hill, Canada

PostPosted: Mon Mar 24, 2025 5:16 pm    Post subject: Reply with quote

Welcome,

The initial message gave me impression that first stage boot loader (BIOS/UEFI) having problem locate boot device. So from your system setup were you able see those NVMe device(s)? maybe you need to enable/disable something.

Have you seen this? https://dl.dell.com/topicspdf/poweredge-r540_reference-guide7_en-us.pdf
Back to top
View user's profile Send private message
skips
n00b
n00b


Joined: 24 Mar 2025
Posts: 15

PostPosted: Mon Mar 24, 2025 7:25 pm    Post subject: Reply with quote

Thanks for the hint. I triple checked my BIOS settings and they seem alright, e.g. regarding the NVMe module in non-RAID mode, etc.
The system seems to be able to "see" the module but fails to boot from it. This is the exact output during the boot attempt:

Code:
Booting from gentoo
Boot failed: gentoo

Booting from Linux Boot Manager
Boot failed: Linux Boot Manager


I guess the second entry is from one of my earlier attempts with systemd-boot.

Could it be that my kernel is misconfigured? I kind of ruled this out before since it doesn't seem to load the kernel in the first place.
Any considerations regarding initramfs? Is there something wrong with my approach from my original post?
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 55172
Location: 56N 3W

PostPosted: Mon Mar 24, 2025 8:18 pm    Post subject: Reply with quote

skips,

Those messages do not come from the kernel.

The boot sequence is
1. The EFI firmware loads an EFI compatible program of your choice. Often a boot loader but it can be the kernel too.
2. The boot loader does its thing, offers you a menu.
3. You select something to boot, the booot loader loads the kernel and optionally, one or more initramfs.
4. The boot loader exits by jumping to the kernel start address.
5. The kernel does it's initialisation, then mounts the root filesystem. This may be an initramfs.
6a. The initramfs executes its init script and drops you to a rescue shell it something goes wrong
6b Control is passed to /sbin/init to complete system startup.

It sounds like its not getting as far as step 2.

In the chroot, what does
Code:
efibootmgr
tell?
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
skips
n00b
n00b


Joined: 24 Mar 2025
Posts: 15

PostPosted: Tue Mar 25, 2025 11:49 am    Post subject: Reply with quote

Okay, this makes perfect sense to me.

efibootmgr provides this output:


Code:
BootCurrent: 000D
BootOrder: 0005,0002,0000,0006,0007,0008,0009,000A,0003,000B,000C,000D
Boot0000  Embedded NIC 1 Port 1 Partition 1     VenHw(3a191845-5f86-4e78-8fce-c4cff59f9daa)
Boot0001* Hard drive C: VenHw(d6c0639f-c705-4eb9-aa4f-5802d8823de6)feff1800000000000000000000000104f000e0cb02000000cc00e0cb8401e0cb0000000000000000000000000
0000000000000000000000000000000000000000000000000120000000000000000001c0002010c00d041030a010000000101060000020101060000007fff04005000450052004300200
048003700330030005000200041006400610070007400650072002800620075007300200031003800200064006500760020003000300029000000feff0000000014000000000000000c0
30904409c02009000000000000904409c00000000000000000000000000000000000000000000000000000000000a00a0001cfc22a213001cfc22a2000000001c0002010c00d041030a
000000000101060000140305060009007fff04000000
Boot0002* Linux Boot Manager    HD(1,GPT,faacf487-8301-44a7-80e6-3b121d89d23e,0x800,0x200000)/\EFI\systemd\systemd-bootx64.efi
Boot0003* DISK 2.0      PciRoot(0x0)/Pci(0x14,0x0)/USB(9,0)
Boot0004  BRCM MBA Slot 0400 v21.6.4    BBS(128,BRCM MBA Slot 0400 v21.6.4,0x0)feff0400000000000000000000000200620300c880000000800000c8470300c8000000000000000000000000000000000000000000000000000000000000000000000000
00110000020000000000001c0002010c00d041030a0000000001010600051c0101060000007fff04004200520043004d0020004d0042004100200053006c006f007400200030003400
3000300020007600320031002e0036002e0034000000
Boot0005* gentoo        HD(1,GPT,faacf487-8301-44a7-80e6-3b121d89d23e,0x800,0x200000)/\EFI\gentoo\grubx64.efi
Boot0006* USB Placeholder       VenHw(0c8cb6cc-13ae-45f4-bbcd-6a25e98ac250)
Boot0007  EFI RAID Disk PlaceHolder 1   PciRoot(0x1)/Pci(0x2,0x0)/Pci(0x0,0x0)/Ctrl(0x1)/SCSI(1,0)
Boot0008  EFI RAID Disk PlaceHolder 2   PciRoot(0x1)/Pci(0x2,0x0)/Pci(0x0,0x0)/Ctrl(0x1)/SCSI(4,0)
Boot0009  EFI RAID Disk PlaceHolder 3   PciRoot(0x1)/Pci(0x2,0x0)/Pci(0x0,0x0)/Ctrl(0x1)/SCSI(7,0)
Boot000A  EFI RAID Disk PlaceHolder 4   PciRoot(0x1)/Pci(0x2,0x0)/Pci(0x0,0x0)/Ctrl(0x1)/SCSI(10,0)
Boot000B*       PciRoot(0x0)/Pci(0x14,0x0)/USB(11,0)
Boot000C* Virtual Floppy        PciRoot(0x0)/Pci(0x14,0x0)/USB(13,0)/USB(3,0)/USB(0,0)/Unit(1)
Boot000D* Virtual CD/DVD        PciRoot(0x0)/Pci(0x14,0x0)/USB(13,0)/USB(3,0)/USB(0,0)/Unit(0)
MirroredPercentageAbove4G: 0.00
MirrorMemoryBelow4GB: false


Moderator note: Fixed non breaking long lines. -- Banana
Back to top
View user's profile Send private message
sMueggli
Guru
Guru


Joined: 03 Sep 2022
Posts: 579

PostPosted: Tue Mar 25, 2025 3:57 pm    Post subject: Reply with quote

Please show the content of /boot/grub/grub.cfg.

And also the output of:

Code:
file /boot/vmlinuz-6.12.16-gentoo
emerge -pv sys-kernel/installkernel
Back to top
View user's profile Send private message
keekkenen
n00b
n00b


Joined: 05 Oct 2024
Posts: 56

PostPosted: Tue Mar 25, 2025 4:52 pm    Post subject: Reply with quote

I think you need to use a simple way such in wiki https://wiki.gentoo.org/wiki/GRUB
    add GRUB_PLATFORMS="efi-64" to make.conf
    emerge grub with 'mount' flag
    emerge os-prober (if you use other OS on ohters ssd)
    create boot directory in root (I mean /)
    grub-mkconfig -o /boot/grub/grub.cfg
    emerge installkernell (I use solid kernel only, and I have grub emerged with grub flag only)
    mount /efi
    grub-install --efi-directory=/efi (sorry you did it already)

the last command should add a grub loader to /efi and gentoo boot element to your UEFI,
Code:
kee /home/ed # efibootmgr | grep gentoo
Boot0000* gentoo        HD(1,GPT,abf721c9-36c7-423d-ab44-16b726c7e4a8,0x800,0x200000)/\EFI\gentoo\grubx64.efi

after that you can choose it in your BIOS, and after your 'make install' command new kernel should be added to /boot directory and grub config should update (installkernel and os-prober help with it) and you can see the same output
Code:
 INSTALL /boot
Reading /usr/lib/kernel/install.conf...
/usr/lib/kernel/install.conf configures layout=grub
/usr/lib/kernel/install.conf configures initrd_generator=none
/usr/lib/kernel/install.conf configures uki_generator=none

Running /usr/lib/kernel/preinst.d/35-amd-microcode.install 6.12.16-gentoo-gentoo-dist arch/x86/boot/bzImage...

 * Generating AMD CPU Microcode early initramfs image...
 * Created temporary directory: /tmp/tmp.1wZhO9F3xI
 * Created microcode archive at: /boot/amd-uc.img
 * Cleaned up temporary directory: /tmp/tmp.1wZhO9F3xI

Hook /usr/lib/kernel/preinst.d/35-amd-microcode.install finished successfully

Running /usr/lib/kernel/preinst.d/99-check-diskspace.install 6.12.16-gentoo-gentoo-dist arch/x86/boot/bzImage...

 * Checking available disk space on /boot...
 * Disk space okay. Need at least 29844 KiB, found 1193380728 KiB.

Hook /usr/lib/kernel/preinst.d/99-check-diskspace.install finished successfully

Installing kernel image for 6.12.16-gentoo-gentoo-dist...
Installing System.map for 6.12.16-gentoo-gentoo-dist...
Installing config for 6.12.16-gentoo-gentoo-dist...

Running /usr/lib/kernel/postinst.d/91-grub-mkconfig.install 6.12.16-gentoo-gentoo-dist /boot/vmlinuz-6.12.16-gentoo-gentoo-dist...

 * Backing up existing grub config as /boot/grub/grub.cfg~...
'/boot/grub/grub.cfg' -> '/boot/grub/grub.cfg~'
 * Generating new GRUB config as /boot/grub/grub.cfg...
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.12.16-gentoo-gentoo-dist
Found initrd image: /boot/amd-uc.img
Found linux image: /boot/vmlinuz-6.12.16-gentoo-gentoo-dist.old
Found initrd image: /boot/amd-uc.img
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot entries.
Adding boot menu entry for UEFI Firmware Settings ...
done

Hook /usr/lib/kernel/postinst.d/91-grub-mkconfig.install finished successfully

Running /usr/lib/kernel/postinst.d/99-write-log.install 6.12.16-gentoo-gentoo-dist /boot/vmlinuz-6.12.16-gentoo-gentoo-dist...

 * Appending installed kernel to /var/log/installkernel.log...

Hook /usr/lib/kernel/postinst.d/99-write-log.install finished successfully

_________________
7950x3d / x670e MSI Tomagawk / Sapphire RX 7800XT 16Gb / G.Skill 64Gb 5600 / A-Data Legend 960 2Tb (x2), A-Data SX8200PNP 256Gb
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 55172
Location: 56N 3W

PostPosted: Tue Mar 25, 2025 5:49 pm    Post subject: Reply with quote

skips,

Code:
Boot0005* gentoo        HD(1,GPT,faacf487-8301-44a7-80e6-3b121d89d23e,0x800,0x200000)/\EFI\gentoo\grubx64.efi


This says to load grubx64.efi from the ESP from the directory EFI/gentoo. The \ are correct in the path name above. Microsoft had a hand in writing the EFI specification.
It looks correct.

This goes on to load the file grub_stage2 (from memory) from /boot/grub/.
That in turn displays a menu for you to choose what to boot.
/boot can be the ESP.

Hence sMueggli asking for /boot/grub/grub.cfg, asit populates the boot menu.
If it never gets that far the error is with the grub build or install.

Along with /boot/grub/grub.cfg, tho output of
Code:
 ls -l /boot
will be good, so we can see that the files listed in the menu actually exist.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
skips
n00b
n00b


Joined: 24 Mar 2025
Posts: 15

PostPosted: Tue Mar 25, 2025 8:31 pm    Post subject: Reply with quote

Thanks to all of you. Here's the requested information - disclaimer, it's about to get messy.

Code:
$>cat /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
  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 xfs
search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
    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=de_DE
  insmod gettext
fi
terminal_output gfxterm
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
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Gentoo GNU/Linux' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-bce381c4-6226-467c-954b-c9e6314f8572'                                                                                                           {
        load_video
        insmod gzio
        insmod part_gpt
        insmod xfs
        search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
        echo    'Loading Linux 6.12.16-gentoo.efi ...'
        linux   /EFI/Gentoo/vmlinuz-6.12.16-gentoo.efi root=PARTUUID=68bbd7e7-c72c-4f78-b1d6-02c30175ba48 ro
        echo    'Loading initial ramdisk ...'
        initrd  /EFI/Gentoo/intel-uc.img
}
submenu 'Advanced options for Gentoo GNU/Linux' $menuentry_id_option 'gnulinux-advanced-bce381c4-6226-467c-954b-c9e6314f8572' {
        menuentry 'Gentoo GNU/Linux, with Linux 6.12.16-gentoo.efi' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.12.16-gentoo.efi-advanced-bce381c4-6226-467c-954b-c9e6314f8572' {
                load_video
                insmod gzio
                insmod part_gpt
                insmod xfs
                search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
                echo    'Loading Linux 6.12.16-gentoo.efi ...'
                linux   /EFI/Gentoo/vmlinuz-6.12.16-gentoo.efi root=PARTUUID=68bbd7e7-c72c-4f78-b1d6-02c30175ba48 ro
                echo    'Loading initial ramdisk ...'
                initrd  /EFI/Gentoo/intel-uc.img
        }
        menuentry 'Gentoo GNU/Linux, with Linux 6.12.16-gentoo.efi (recovery mode)' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.12.16-gentoo.efi-recovery-bce381c4-6226-467c-954b-c9e6314f8572' {
                load_video
                insmod gzio
                insmod part_gpt
                insmod xfs
                search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
                echo    'Loading Linux 6.12.16-gentoo.efi ...'
                linux   /EFI/Gentoo/vmlinuz-6.12.16-gentoo.efi root=PARTUUID=68bbd7e7-c72c-4f78-b1d6-02c30175ba48 ro single
                echo    'Loading initial ramdisk ...'
                initrd  /EFI/Gentoo/intel-uc.img
        }
        menuentry 'Gentoo GNU/Linux, with Linux 6.12.16-gentoo-old.efi' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.12.16-gentoo-old.efi-advanced-bce381c4-6226-467c-954b-c9e6314f8572' {
                load_video
                insmod gzio
                insmod part_gpt
                insmod xfs
                search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
                echo    'Loading Linux 6.12.16-gentoo-old.efi ...'
                linux   /EFI/Gentoo/vmlinuz-6.12.16-gentoo-old.efi root=PARTUUID=68bbd7e7-c72c-4f78-b1d6-02c30175ba48 ro
                echo    'Loading initial ramdisk ...'
                initrd  /EFI/Gentoo/intel-uc.img
        }
        menuentry 'Gentoo GNU/Linux, with Linux 6.12.16-gentoo-old.efi (recovery mode)' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.12.16-gentoo-old.efi-recovery-bce381c4-6226-467c-954b-c9e6314f8572' {
                load_video
                insmod gzio
                insmod part_gpt
                insmod xfs
                search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
                echo    'Loading Linux 6.12.16-gentoo-old.efi ...'
                linux   /EFI/Gentoo/vmlinuz-6.12.16-gentoo-old.efi root=PARTUUID=68bbd7e7-c72c-4f78-b1d6-02c30175ba48 ro single
                echo    'Loading initial ramdisk ...'
                initrd  /EFI/Gentoo/intel-uc.img
        }
        menuentry 'Gentoo GNU/Linux, with Linux 6.12.16-gentoo' --class gentoo  --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.12.16-gentoo-advanced-bce381c4-6226-467c-954b-c9e6314f8572' {
                load_video
                if [ "x$grub_platform" = xefi ]; then
                        set gfxpayload=keep
                fi
                insmod gzio
                insmod part_gpt
                insmod xfs
                search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
                echo    'Loading Linux 6.12.16-gentoo ...'
                linux   /boot/vmlinuz-6.12.16-gentoo root=UUID=bce381c4-6226-467c-954b-c9e6314f8572 ro
                echo    'Loading initial ramdisk ...'
                initrd  /boot/intel-uc.img /boot/initramfs-6.12.16-gentoo.img
        }
        menuentry 'Gentoo GNU/Linux, with Linux 6.12.16-gentoo (recovery mode)' -class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.12.16-gentoo-recovery-bce381c4-6226-467c-954b-c9e6314f8572' {
                load_video
                if [ "x$grub_platform" = xefi ]; then
                        set gfxpayload=keep
                fi
                insmod gzio
                insmod part_gpt
                insmod xfs
                search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
                echo    'Loading Linux 6.12.16-gentoo ...'
                linux   /boot/vmlinuz-6.12.16-gentoo root=UUID=bce381c4-6226-467c-954b-c9e6314f8572 ro single
                echo    'Loading initial ramdisk ...'
                initrd  /boot/intel-uc.img /boot/initramfs-6.12.16-gentoo.img
        }
        menuentry 'Gentoo GNU/Linux, with Linux 6.12.16-gentoo.old' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.12.16-gentoo.old-advanced-bce381c4-6226-467c-954b-c9e6314f8572' {
                load_video
                if [ "x$grub_platform" = xefi ]; then
                        set gfxpayload=keep
                fi
                insmod gzio
                insmod part_gpt
                insmod xfs
                search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
                echo    'Loading Linux 6.12.16-gentoo.old ...'
                linux   /boot/vmlinuz-6.12.16-gentoo.old root=UUID=bce381c4-6226-467c-954b-c9e6314f8572 ro
                echo    'Loading initial ramdisk ...'
                initrd  /boot/intel-uc.img /boot/initramfs-6.12.16-gentoo.img.old
        }
        menuentry 'Gentoo GNU/Linux, with Linux 6.12.16-gentoo.old (recovery mode)' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.12.16-gentoo.old-recovery-bce381c4-6226-467c-954b-c9e6314f8572' {
                load_video
                if [ "x$grub_platform" = xefi ]; then
                        set gfxpayload=keep
                fi
                insmod gzio
                insmod part_gpt
                insmod xfs
                search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
                echo    'Loading Linux 6.12.16-gentoo.old ...'
                linux   /boot/vmlinuz-6.12.16-gentoo.old root=UUID=bce381c4-6226-467c-954b-c9e6314f8572 ro single
                echo    'Loading initial ramdisk ...'
                initrd  /boot/intel-uc.img /boot/initramfs-6.12.16-gentoo.img.old
        }
}

### 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 ###
if [ "$grub_platform" = "efi" ]; then
        menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware'                                                                                                           {
                fwsetup
        }
fi
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/39_memtest86+ ###
submenu 'Memtest86+' {
        if [ "x$grub_platform" = xpc ]; then
        menuentry 'Memtest86+ 64bit' {
                insmod part_gpt
                insmod xfs
                search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
                linux "/boot/memtest86plus/memtest64.bios"
        }
        fi
        if [ "x$grub_platform" = xefi ]; then
        menuentry 'Memtest86+ 64bit UEFI' {
                insmod part_gpt
                insmod xfs
                search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
                chainloader "/boot/memtest86plus/memtest.efi64"
        }
        fi
}
### END /etc/grub.d/39_memtest86+ ###

### 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.

menuentry "GRML" {
     iso_path="/grml-full-2024.12-amd64.iso"
     export iso_path
     search --set=root --file $iso_path

     # support booting recent GRUB versions on UEFI systems
     rmmod tpm

     loopback loop $iso_path
     set root=(loop)
     # the path below is on the SystemRescue ISO, not the hard drive
     configfile /boot/grub/loopback.cfg
}
### 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 ###


Code:
$>file /boot/vmlinuz-6.12.16-gentoo
/boot/vmlinuz-6.12.16-gentoo: Linux kernel x86 boot executable bzImage, version 6.12.16-gentoo (root@livecd) #10 SMP PREEMPT_DYNAMIC Mon Mar 24 18:05:57 CET 2025, RO-rootFS, swap_dev 0XA, Normal VGA


Code:
$>emerge -pv sys-kernel/installkernel
[ebuild   R   ~] sys-kernel/installkernel-57::gentoo  USE="grub -dracut -efistub -refind -systemd -systemd-boot -ugrd -uki -ukify" 0 KiB


Code:
$>ls -l /boot
total 167504
-rw-r--r-- 1 root root  5656431 Mar 24 18:08 System.map-6.12.16-gentoo
-rw-r--r-- 1 root root  5656431 Mar 24 18:07 System.map-6.12.16-gentoo.old
-rw-r--r-- 1 root root      512 Mar 23 12:31 boot.10300
-rw-r--r-- 1 root root 20283904 Mar 22 11:25 bzImage
-rw-r--r-- 1 root root  9966592 Mar 23 12:31 bzImage.working
-rw-r--r-- 1 root root   118645 Mar 24 18:08 config-6.12.16-gentoo
-rw-r--r-- 1 root root   118645 Mar 24 18:07 config-6.12.16-gentoo.old
drwxr-xr-x 6 root root      113 Mar 24 18:08 grub
-rw-r--r-- 1 root root 42749404 Mar 24 18:08 initramfs-6.12.16-gentoo.img
-rw-r--r-- 1 root root 42749404 Mar 24 18:07 initramfs-6.12.16-gentoo.img.old
-rw-r--r-- 1 root root 21873664 Mar 25 15:10 intel-uc.img
-rw------- 1 root root   314880 Mar 23 21:01 map
drwxr-xr-x 2 root root       49 Mar 22 11:21 memtest86plus
-rw-r--r-- 1 root root 11006976 Mar 24 18:08 vmlinuz-6.12.16-gentoo
-rw-r--r-- 1 root root 11006976 Mar 24 18:07 vmlinuz-6.12.16-gentoo.old


Again, thank you for your support - it's amazing to be able to count on this community for help!

Excessive white space removed by NeddySeagoon.
Back to top
View user's profile Send private message
skips
n00b
n00b


Joined: 24 Mar 2025
Posts: 15

PostPosted: Tue Mar 25, 2025 8:56 pm    Post subject: Reply with quote

keekkenen wrote:
I think you need to use a simple way such in wiki https://wiki.gentoo.org/wiki/GRUB
    add GRUB_PLATFORMS="efi-64" to make.conf
    emerge grub with 'mount' flag
    emerge os-prober (if you use other OS on ohters ssd)
    create boot directory in root (I mean /)
    grub-mkconfig -o /boot/grub/grub.cfg
    emerge installkernell (I use solid kernel only, and I have grub emerged with grub flag only)
    mount /efi
    grub-install --efi-directory=/efi (sorry you did it already)

the last command should add a grub loader to /efi and gentoo boot element to your UEFI,
Code:
kee /home/ed # efibootmgr | grep gentoo
Boot0000* gentoo        HD(1,GPT,abf721c9-36c7-423d-ab44-16b726c7e4a8,0x800,0x200000)/\EFI\gentoo\grubx64.efi

after that you can choose it in your BIOS, and after your 'make install' command new kernel should be added to /boot directory and grub config should update (installkernel and os-prober help with it) and you can see the same output
Code:
 INSTALL /boot
Reading /usr/lib/kernel/install.conf...
/usr/lib/kernel/install.conf configures layout=grub
/usr/lib/kernel/install.conf configures initrd_generator=none
/usr/lib/kernel/install.conf configures uki_generator=none

Running /usr/lib/kernel/preinst.d/35-amd-microcode.install 6.12.16-gentoo-gentoo-dist arch/x86/boot/bzImage...

 * Generating AMD CPU Microcode early initramfs image...
 * Created temporary directory: /tmp/tmp.1wZhO9F3xI
 * Created microcode archive at: /boot/amd-uc.img
 * Cleaned up temporary directory: /tmp/tmp.1wZhO9F3xI

Hook /usr/lib/kernel/preinst.d/35-amd-microcode.install finished successfully

Running /usr/lib/kernel/preinst.d/99-check-diskspace.install 6.12.16-gentoo-gentoo-dist arch/x86/boot/bzImage...

 * Checking available disk space on /boot...
 * Disk space okay. Need at least 29844 KiB, found 1193380728 KiB.

Hook /usr/lib/kernel/preinst.d/99-check-diskspace.install finished successfully

Installing kernel image for 6.12.16-gentoo-gentoo-dist...
Installing System.map for 6.12.16-gentoo-gentoo-dist...
Installing config for 6.12.16-gentoo-gentoo-dist...

Running /usr/lib/kernel/postinst.d/91-grub-mkconfig.install 6.12.16-gentoo-gentoo-dist /boot/vmlinuz-6.12.16-gentoo-gentoo-dist...

 * Backing up existing grub config as /boot/grub/grub.cfg~...
'/boot/grub/grub.cfg' -> '/boot/grub/grub.cfg~'
 * Generating new GRUB config as /boot/grub/grub.cfg...
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.12.16-gentoo-gentoo-dist
Found initrd image: /boot/amd-uc.img
Found linux image: /boot/vmlinuz-6.12.16-gentoo-gentoo-dist.old
Found initrd image: /boot/amd-uc.img
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot entries.
Adding boot menu entry for UEFI Firmware Settings ...
done

Hook /usr/lib/kernel/postinst.d/91-grub-mkconfig.install finished successfully

Running /usr/lib/kernel/postinst.d/99-write-log.install 6.12.16-gentoo-gentoo-dist /boot/vmlinuz-6.12.16-gentoo-gentoo-dist...

 * Appending installed kernel to /var/log/installkernel.log...

Hook /usr/lib/kernel/postinst.d/99-write-log.install finished successfully


Thank you - I repeated all these steps and, sadly, the outcome is unchanged.
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 55172
Location: 56N 3W

PostPosted: Tue Mar 25, 2025 9:14 pm    Post subject: Reply with quote

skips,

Your default memu entry
Code:
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Gentoo GNU/Linux' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-bce381c4-6226-467c-954b-c9e6314f8572'                                                                                                           {
        load_video
        insmod gzio
        insmod part_gpt
        insmod xfs
        search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
        echo    'Loading Linux 6.12.16-gentoo.efi ...'
        linux   /EFI/Gentoo/vmlinuz-6.12.16-gentoo.efi root=PARTUUID=68bbd7e7-c72c-4f78-b1d6-02c30175ba48 ro
        echo    'Loading initial ramdisk ...'
        initrd  /EFI/Gentoo/intel-uc.img
}

Tries to load a a kernel from /EFI/Gentoo/vmlinuz-6.12.16-gentoo.efi
Thats not wrong but its an efi stub kernel.
There is no initrd to load kernel modules from. That's OK if you made your own kernel.
We don't know that EFI/Gentoo/ exists and is populated. We haven't asked yet.
Anyway, that's doing it the hard way, so we can come back to that.


Its not until we get into the advanced menu that we get
Code:
menuentry 'Gentoo GNU/Linux, with Linux 6.12.16-gentoo' --class gentoo  --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.12.16-gentoo-advanced-bce381c4-6226-467c-954b-c9e6314f8572' {
                load_video
                if [ "x$grub_platform" = xefi ]; then
                        set gfxpayload=keep
                fi
                insmod gzio
                insmod part_gpt
                insmod xfs
                search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
                echo    'Loading Linux 6.12.16-gentoo ...'
                linux   /boot/vmlinuz-6.12.16-gentoo root=UUID=bce381c4-6226-467c-954b-c9e6314f8572 ro
                echo    'Loading initial ramdisk ...'
                initrd  /boot/intel-uc.img /boot/initramfs-6.12.16-gentoo.img
        }

Which is much more like we expect and all the bits are in /boot to support.

Do you get a grub menu at all?
I think that's the 5th entry in the advanced menu. The first 4 all want various efi stub kernels.
Does the 5th entry in the advanced menu boot?
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
keekkenen
n00b
n00b


Joined: 05 Oct 2024
Posts: 56

PostPosted: Tue Mar 25, 2025 10:26 pm    Post subject: Reply with quote

NeddySeagoon wrote:

Which is much more like we expect and all the bits are in /boot to support.

Yes, I agree with you, expected
Code:
echo   'Loading Linux 6.12.16-gentoo-gentoo-dist ...'
linux   /boot/vmlinuz-6.12.16-gentoo-gentoo-dist root=PARTUUID=... ro 


grub.cfg looks like wrong, so after 'make install' command grub.cfg was regenerated or not?

in your 'ls -l /boot' output I see *.old after kernel update, but there doesn't exists grub.cfg~ - previous config
install kernel had to run grub config update as
Code:
grub-mkconfig -o /boot/grub/grub.cfg

_________________
7950x3d / x670e MSI Tomagawk / Sapphire RX 7800XT 16Gb / G.Skill 64Gb 5600 / A-Data Legend 960 2Tb (x2), A-Data SX8200PNP 256Gb
Back to top
View user's profile Send private message
skips
n00b
n00b


Joined: 24 Mar 2025
Posts: 15

PostPosted: Wed Mar 26, 2025 8:06 am    Post subject: Reply with quote

Thank you for all your suggestions. I tried removing the clutter by reformatting my efi partition and deleting all files from /boot.
After re-running make install and generating a new grub.cfg - this is what I get:

Code:
$>ls /boot
# ls -l /boot
total 79500
-rw-r--r-- 1 root root  5656431 Mar 26 08:59 System.map-6.12.16-gentoo
-rw-r--r-- 1 root root   118645 Mar 26 08:59 config-6.12.16-gentoo
drwxr-xr-x 6 root root       96 Mar 26 09:01 grub
-rw-r--r-- 1 root root 42749404 Mar 26 08:59 initramfs-6.12.16-gentoo.img
-rw-r--r-- 1 root root 21871616 Mar 26 08:59 intel-uc.img
-rw-r--r-- 1 root root 11006976 Mar 26 08:59 vmlinuz-6.12.16-gentoo



Code:
$>cat /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
  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 xfs
search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
    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=de_DE
  insmod gettext
fi
terminal_output gfxterm
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
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Gentoo GNU/Linux' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-bce381c4-6226-467c-954b-c9e6314f8572' {
        load_video
        if [ "x$grub_platform" = xefi ]; then
                set gfxpayload=keep
        fi
        insmod gzio
        insmod part_gpt
        insmod xfs
        search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
        echo    'Loading Linux 6.12.16-gentoo ...'
        linux   /boot/vmlinuz-6.12.16-gentoo root=UUID=bce381c4-6226-467c-954b-c9e6314f8572 ro
        echo    'Loading initial ramdisk ...'
        initrd  /boot/intel-uc.img /boot/initramfs-6.12.16-gentoo.img
}
submenu 'Advanced options for Gentoo GNU/Linux' $menuentry_id_option 'gnulinux-advanced-bce381c4-6226-467c-954b-c9e6314f8572' {
        menuentry 'Gentoo GNU/Linux, with Linux 6.12.16-gentoo' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.12.16-gentoo-advanced-bce381c4-6226-467c-954b-c9e6314f8572' {
                load_video
                if [ "x$grub_platform" = xefi ]; then
                        set gfxpayload=keep
                fi
                insmod gzio
                insmod part_gpt
                insmod xfs
                search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
                echo    'Loading Linux 6.12.16-gentoo ...'
                linux   /boot/vmlinuz-6.12.16-gentoo root=UUID=bce381c4-6226-467c-954b-c9e6314f8572 ro
                echo    'Loading initial ramdisk ...'
                initrd  /boot/intel-uc.img /boot/initramfs-6.12.16-gentoo.img
        }
        menuentry 'Gentoo GNU/Linux, with Linux 6.12.16-gentoo (recovery mode)' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.12.16-gentoo-recovery-bce381c4-6226-467c-954b-c9e6314f8572' {
                load_video
                if [ "x$grub_platform" = xefi ]; then
                        set gfxpayload=keep
                fi
                insmod gzio
                insmod part_gpt
                insmod xfs
                search --no-floppy --fs-uuid --set=root bce381c4-6226-467c-954b-c9e6314f8572
                echo    'Loading Linux 6.12.16-gentoo ...'
                linux   /boot/vmlinuz-6.12.16-gentoo root=UUID=bce381c4-6226-467c-954b-c9e6314f8572 ro single
                echo    'Loading initial ramdisk ...'
                initrd  /boot/intel-uc.img /boot/initramfs-6.12.16-gentoo.img
        }
}

### 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 ###
if [ "$grub_platform" = "efi" ]; then
        menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
                fwsetup
        }
fi
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/39_memtest86+ ###
### END /etc/grub.d/39_memtest86+ ###

### 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.

menuentry "GRML" {
     iso_path="/grml-full-2024.12-amd64.iso"
     export iso_path
     search --set=root --file $iso_path

     # support booting recent GRUB versions on UEFI systems
     rmmod tpm

     loopback loop $iso_path
     set root=(loop)
     # the path below is on the SystemRescue ISO, not the hard drive
     configfile /boot/grub/loopback.cfg
}
### 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 ###


Code:
$>efibootmgr
BootCurrent: 000D
BootOrder: 0003,0002,0000,0006,0007,0008,0009,000A,000C,000D
Boot0000  Embedded NIC 1 Port 1 Partition 1     VenHw(3a191845-5f86-4e78-8fce-c4cff59f9daa)
Boot0001* Hard drive C: VenHw(d6c0639f-c705-4eb9-aa4f-5802d8823de6)feff1800000000000000000000000104f000e0cb02000000cc00e0cb8401e0cb000000000000000000
00000000000000000000000000000000000000000000000000000000120000000000000000001c0002010c00d041030a0100
00000101060000020101060000007fff0400500045005200430020004800370033003000500020004100640061007000740065
0072002800620075007300200031003800200064006500760020003000300029000000feff0000000014000000000000000c030
904409c02009000000000000904409c00000000000000000000000000000000000000000000000000000000000a00a0001cfc2
2a213001cfc22a2000000001c0002010c00d041030a000000000101060000140305060009007fff04000000
Boot0002* Linux Boot Manager    HD(1,GPT,faacf487-8301-44a7-80e6-3b121d89d23e,0x800,0x200000)/\EFI\systemd\systemd-bootx64.efi
Boot0003* gentoo        HD(1,GPT,faacf487-8301-44a7-80e6-3b121d89d23e,0x800,0x200000)/\EFI\gentoo\grubx64.efi
Boot0004  BRCM MBA Slot 0400 v21.6.4    BBS(128,BRCM MBA Slot 0400 v21.6.4,0x0)feff0400000000000000000000000200620300c8800
00000800000c8470300c8000000000000000000000000000000000000000
00000000000000000000000000000000000110000020000000000001c0002010c00d041030a0000000001010600051c0101060000007fff040
04200520043004d0020004d0042004100200053006c006f0074002000300034003000300020007600320031002e0036002e0034000000
Boot0006* USB Placeholder       VenHw(0c8cb6cc-13ae-45f4-bbcd-6a25e98ac250)
Boot0007  EFI RAID Disk PlaceHolder 1   PciRoot(0x1)/Pci(0x2,0x0)/Pci(0x0,0x0)/Ctrl(0x1)/SCSI(1,0)
Boot0008  EFI RAID Disk PlaceHolder 2   PciRoot(0x1)/Pci(0x2,0x0)/Pci(0x0,0x0)/Ctrl(0x1)/SCSI(4,0)
Boot0009  EFI RAID Disk PlaceHolder 3   PciRoot(0x1)/Pci(0x2,0x0)/Pci(0x0,0x0)/Ctrl(0x1)/SCSI(7,0)
Boot000A  EFI RAID Disk PlaceHolder 4   PciRoot(0x1)/Pci(0x2,0x0)/Pci(0x0,0x0)/Ctrl(0x1)/SCSI(10,0)
Boot000C* Virtual Floppy        PciRoot(0x0)/Pci(0x14,0x0)/USB(13,0)/USB(3,0)/USB(0,0)/Unit(1)
Boot000D* Virtual CD/DVD        PciRoot(0x0)/Pci(0x14,0x0)/USB(13,0)/USB(3,0)/USB(0,0)/Unit(0)
MirroredPercentageAbove4G: 0.00
MirrorMemoryBelow4GB: false


It looks like the gentoo entry in efibootmgr is correct; however, there is the old systemd-boot entry and some "Hard drive C:" options. Is it possible to regenerate this boot manager list and start over from scratch?

To your point, grub never loads and I cannot get passed the failed boot message as listed above.
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 55172
Location: 56N 3W

PostPosted: Wed Mar 26, 2025 11:39 am    Post subject: Reply with quote

skips,

Since grub never loads the content of grub.cfg has no bearing on the problem yet.

You can use efibootmgr to remove entries and reorder them.
That won't help either as your gentoo entry is first in the list.

It has to be the way grub is built or installed.
Please post the output of emerge --info.
You should have an entry for grub there.

I'm a syslinux user but that's not a reccomendation.
The information on it is both sparse and conflicting.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
skips
n00b
n00b


Joined: 24 Mar 2025
Posts: 15

PostPosted: Wed Mar 26, 2025 12:23 pm    Post subject: Reply with quote

Here's the output of emerge --info

Code:
Portage 3.0.67 (python 3.12.9-final-0, default/linux/amd64/23.0/no-multilib, gcc-14, glibc-2.40-r8, 6.12.16 x86_64)
=================================================================
System uname: Linux-6.12.16-x86_64-Intel-R-_Xeon-R-_Gold_6230N_CPU_@_2.30GHz-with-glibc2.40
KiB Mem:    97513372 total,  91499448 free
KiB Swap:   33554428 total,  33554428 free
Timestamp of repository gentoo: Tue, 25 Mar 2025 11:45:00 +0000
Head commit of repository gentoo: 572e45f62436a714a34e26176fe20bb4379bf0bd
sh bash 5.2_p37
ld GNU ld (Gentoo 2.44 p1) 2.44.0
app-misc/pax-utils:        1.3.8::gentoo
app-shells/bash:           5.2_p37::gentoo
dev-build/autoconf:        2.72-r1::gentoo
dev-build/automake:        1.17-r1::gentoo
dev-build/cmake:           3.31.5::gentoo
dev-build/libtool:         2.5.4::gentoo
dev-build/make:            4.4.1-r100::gentoo
dev-build/meson:           1.7.0::gentoo
dev-lang/perl:             5.40.0-r1::gentoo
dev-lang/python:           3.12.9::gentoo, 3.13.2::gentoo
sys-apps/baselayout:       2.17::gentoo
sys-apps/openrc:           0.56::gentoo
sys-apps/sandbox:          2.39::gentoo
sys-devel/binutils:        2.44::gentoo
sys-devel/binutils-config: 5.5.2::gentoo
sys-devel/gcc:             14.2.1_p20241221::gentoo
sys-devel/gcc-config:      2.12.1::gentoo
sys-kernel/linux-headers:  6.12::gentoo (virtual/os-headers)
sys-libs/glibc:            2.40-r8::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    volatile: False
    sync-rsync-verify-max-age: 3
    sync-rsync-verify-jobs: 1
    sync-rsync-verify-metamanifest: yes
    sync-rsync-extra-opts:

Binary Repositories:

gentoobinhost
    priority: 1
    sync-uri: https://distfiles.gentoo.org/releases/amd64/binpackages/23.0/x86-64

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=skylake -O2 -pipe -ftree-vectorize -flto=4 -fuse-linker-plugin"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/sandbox.d"
CXXFLAGS="-march=skylake -O2 -pipe -ftree-vectorize -flto=4 -fuse-linker-plugin"
DISTDIR="/var/cache/distfiles"
EMERGE_DEFAULT_OPTS="--quiet-build=n"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-march=skylake -O2 -pipe -ftree-vectorize -flto=4 -fuse-linker-plugin"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg-live config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync merge-wait multilib-strict network-sandbox news parallel-fetch pid-sandbox pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-march=skylake -O2 -pipe -ftree-vectorize -flto=4 -fuse-linker-plugin"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs"
LEX="flex"
MAKEOPTS="-j48"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
RUSTFLAGS=" -C target-cpu=native"
SHELL="/bin/bash"
USE="acl amd64 bzip2 cet crypt gdbm iconv ipv6 libtirpc ncurses nls openmp pam pcre readline seccomp ssl test-rust unicode xattr zlib" ABI_X86="64" ADA_TARGET="gcc_14" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_anon authn_dbm authn_file authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 avx512_vnni avx512bw avx512cd avx512dq avx512f avx512vl f16c fma3 mmx mmxext pclmul popcnt rdrand sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" GRUB_PLATFORMS="efi-64" GUILE_SINGLE_TARGET="3-0" GUILE_TARGETS="3-0" INPUT_DEVICES="libinput" KERNEL="linux" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-2" POSTGRES_TARGETS="postgres16" PYTHON_SINGLE_TARGET="python3_12" PYTHON_TARGETS="python3_12" RUBY_TARGETS="ruby32" VIDEO_CARDS="amdgpu fbdev intel nouveau radeon radeonsi vesa dummy" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysrq proto logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PYTHONPATH, RANLIB, READELF, SIZE, STRINGS, STRIP, YACC, YFLAGS
Back to top
View user's profile Send private message
pingtoo
Veteran
Veteran


Joined: 10 Sep 2021
Posts: 1632
Location: Richmond Hill, Canada

PostPosted: Wed Mar 26, 2025 3:03 pm    Post subject: Reply with quote

I still believe your first stage boot load (UEFI) having trouble finding boot device.

Can you share fdisk -l /dev/nvme0n1 or blkid, so we can see what is UUID for the device.
Back to top
View user's profile Send private message
sMueggli
Guru
Guru


Joined: 03 Sep 2022
Posts: 579

PostPosted: Wed Mar 26, 2025 3:19 pm    Post subject: Reply with quote

The last output of grub.cfg looks good.

Does the firmware have a "Secure Boot" configuration? And if so, is Secure Boot disabled?

Maybe it is a problem with the PCIe adapter? Is it possible to use another slot? Is the NVME device ready when the firmware tries to load the binary?

Is your problem similar to https://www.dell.com/community/en/conversations/poweredge-hardware-general/poweredge-r540-will-not-boot-from-nvme/67299b51bca6542df9bea0ec?
Back to top
View user's profile Send private message
skips
n00b
n00b


Joined: 24 Mar 2025
Posts: 15

PostPosted: Wed Mar 26, 2025 4:03 pm    Post subject: Reply with quote

I think we are getting closer. It's great that we can rule out (at least major) configuration issues. I'll try using another slot and/or adapter later tonight.

For now, here's fdisk -l:

Code:
Disk /dev/nvme0n1: 931.51 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: Samsung SSD 970 EVO Plus 1TB
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 22815EBB-883E-4203-954F-FEB71745D890

Device            Start        End    Sectors   Size Type
/dev/nvme0n1p1     2048    2099199    2097152     1G EFI System
/dev/nvme0n1p2  2099200   69208063   67108864    32G Linux swap
/dev/nvme0n1p3 69208064 1953525134 1884317071 898.5G Linux root (x86-64)
Back to top
View user's profile Send private message
pingtoo
Veteran
Veteran


Joined: 10 Sep 2021
Posts: 1632
Location: Richmond Hill, Canada

PostPosted: Wed Mar 26, 2025 4:40 pm    Post subject: Reply with quote

Your disk identifier is "22815EBB-883E-4203-954F-FEB71745D890" whereas your uefi boot string use "faacf487-8301-44a7-80e6-3b121d89d23e" I suspect that could be a issue.

I am not UEFI user and I don't have existing system to test. but if you can update your uefi boot entry to use the "22815EBB-883E-4203-954F-FEB71745D890" to see if that help.

Alternative, if that does not help, I suspect your system UEFI firmware may not recognize the NVMe on the PCIe adapter as "disk" therefor the "HD(1,GPT..." is not working. so it is possible you need to use "PciRoot(0x0)/Pci(0x1C,0x0)/Pci(0x0,0x0)/NVMe(0x1,faacf487-8301-44a7-80e6-3b121d89d23e,0x800,0x200000)" as boot entry string. Please note those PciXXX number may need to change depend on how you PCIe card plug in on your board. you can use lspci to list them. However I am don't know how to identify PCI list output, but I suggest you still try to list them here, so someone can help and identify the PCI path.

Another possibility is that in system setup (F2) SATA Settings details/Embedded SATA you need to set right type "AHCI Mode" and NVMe Settings details/NVMe Mode type is " Non RAID"

my primary thinking is that your board UEFI not able to find the device. I don't know if you have way to verify that at UEFI level you can actually detect that NVMe device.

Maybe you can use Boot Manager main menu/System Utilities that enable System Utilities and use One-shot UEFI boot menu/System Utilities to lunch Launch Diagnostics to see if there any tool to help you identify and verify UEFI know something about the NVMe device.
Back to top
View user's profile Send private message
sMueggli
Guru
Guru


Joined: 03 Sep 2022
Posts: 579

PostPosted: Wed Mar 26, 2025 4:55 pm    Post subject: Reply with quote

pingtoo wrote:
Your disk identifier is "22815EBB-883E-4203-954F-FEB71745D890" whereas your uefi boot string use "faacf487-8301-44a7-80e6-3b121d89d23e" I suspect that could be a issue.


The output of efiboomgr references the partition UUID, and not the disk UUID. The EFI-System-Partition has to be a partition.
Back to top
View user's profile Send private message
pingtoo
Veteran
Veteran


Joined: 10 Sep 2021
Posts: 1632
Location: Richmond Hill, Canada

PostPosted: Wed Mar 26, 2025 6:05 pm    Post subject: Reply with quote

sMueggli wrote:
pingtoo wrote:
Your disk identifier is "22815EBB-883E-4203-954F-FEB71745D890" whereas your uefi boot string use "faacf487-8301-44a7-80e6-3b121d89d23e" I suspect that could be a issue.


The output of efiboomgr references the partition UUID, and not the disk UUID. The EFI-System-Partition has to be a partition.
.

OK, we should still review if the partition UUID match or not.

Explain why I think it is disk UUID wrote:

I am just reading UEFI specification v2.10 :: Protocols Device Path Protocol :: 10.3.5.1. Hard Drive :: Table 10.54 Hard Drive Media Device Path. In that table The forth(4) field is already specific partition number (in reference to "HD(1,GPT,...)" That "1" is refer to partition 1, so that following UUID would be a disk UUID in the event where a system have multiple bookable "disk"s a way let UEFI firmware to identify which "disk" for boot.
Back to top
View user's profile Send private message
pingtoo
Veteran
Veteran


Joined: 10 Sep 2021
Posts: 1632
Location: Richmond Hill, Canada

PostPosted: Wed Mar 26, 2025 6:40 pm    Post subject: Reply with quote

sMueggli,

I have confirmed that UUID field indeed refer to partition UUID from the specification.

Boot Manager :: Firmware Boot Manager :: Boot Manager Programming :: Load Option Processing wrote:
The boot manager must also support booting from a short-form device path that starts with the first element being a hard drive media device path (Hard Drive Media Device Path ). The boot manager must use the GUID or signature and partition number in the hard drive device path to match it to a device in the system. If the drive supports the GPT partitioning scheme the GUID in the hard drive media device path is compared with the UniquePartitionGuid field of the GUID Partition Entry ( GPT Partition Entry ). If the drive supports the PC-AT MBR scheme the signature in the hard drive media device path is compared with the UniqueMBRSignature in the Legacy Master Boot Record ( Legacy MBR ). If a signature match is made, then the partition number must also be matched. The hard drive device path can be appended to the matching hardware device path and normal boot behavior can then be used. If more than one device matches the hard drive device path, the boot manager will pick one arbitrarily. Thus the operating system must ensure the uniqueness of the signatures on hard drives to guarantee deterministic boot behavior.
It is said "If a signature match is made, then the partition number must also be matched"

whereas the GUID Partition Entry specify "UniquePartitionGUID"
Quote:
GUID that is unique for every partition entry. Every partition ever created will have a unique GUID. This GUID must be assigned when the GPT Partition Entry is created. The GPT Partition Entry is created whenever the NumberOfPa rtitionEntries in the GPT Header is increased to include a larger range of addresses.
Back to top
View user's profile Send private message
skips
n00b
n00b


Joined: 24 Mar 2025
Posts: 15

PostPosted: Wed Mar 26, 2025 7:20 pm    Post subject: Reply with quote

Thanks for clarifying. I checked the partition IDs and the EFI partition matches up with the boot entry.

Code:
/dev/sr0: BLOCK_SIZE="2048" UUID="2025-03-23-18-17-27-00" LABEL="Gentoo-amd64-20250323" TYPE="iso9660" PTTYPE="PMBR"
/dev/nvme0n1p3: UUID="bce381c4-6226-467c-954b-c9e6314f8572" BLOCK_SIZE="512" TYPE="xfs" PARTUUID="68bbd7e7-c72c-4f78-b1d6-02c30175ba48"
/dev/nvme0n1p1: LABEL_FATBOOT="efi-boot" LABEL="efi-boot" UUID="8370-A3D4" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="faacf487-8301-44a7-80e6-3b121d89d23e"
/dev/nvme0n1p2: UUID="1db07912-2968-4868-b09d-c0970c27fd0a" TYPE="swap" PARTUUID="bdd39b2f-5b5f-4abc-8e74-dc787e908421"


I'm seriously puzzled.
Back to top
View user's profile Send private message
skips
n00b
n00b


Joined: 24 Mar 2025
Posts: 15

PostPosted: Wed Mar 26, 2025 7:49 pm    Post subject: Reply with quote

Quick update on this: I swapped the PCIe adapter for another module and used it in another slot.
Sadly, the issue prevails. I checked disk and partition UUIDs remained unchanged. Could it be that my NVMe module does not work in this setup?
Back to top
View user's profile Send private message
pingtoo
Veteran
Veteran


Joined: 10 Sep 2021
Posts: 1632
Location: Richmond Hill, Canada

PostPosted: Wed Mar 26, 2025 8:02 pm    Post subject: Reply with quote

skips wrote:
Quick update on this: I swapped the PCIe adapter for another module and used it in another slot.
Sadly, the issue prevails. I checked disk and partition UUIDs remained unchanged. Could it be that my NVMe module does not work in this setup?


Did you try to use One-shot UEFI boot menu/System Utilities to lunch Launch Diagnostics to see if NVMe device visible at UEFI firmware boot manager?
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Installing Gentoo All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum