You are not logged in.

#1 2022-12-31 13:38:13

jhq
Member
Registered: 2022-12-31
Posts: 10

[SOLVED] systemd-boot does not show entries on boot, bootctl does

Hello everybody!

I would really appreciate some help to get systemd-boot working. I try to switch to it from grub.

Setup: mount ESP to /efi and additionally mount an "Extended Boot Loader Partition" (XBOOTLDR) to /boot

What I did so far:

  • Installed the bootloader

    bootctl --esp-path=/efi --boot-path=/boot install
  • Created the entries and a loader.conf on /boot (I also tried on /efi/loader)

What I get:

  • bootctl shows the entries (see below)

  • Booting "Linux Boot Manager" presents me the "Boot to Firmware" option and nothing else

What can I do next? Is there a possibility to check or debug the entries?

bootctl (booted with GRUB here)

[root@marder ~]# bootctl
System:
      Firmware: n/a (n/a)
 Firmware Arch: x64
   Secure Boot: disabled (disabled)
  TPM2 Support: no
  Boot into FW: supported

Current Boot Loader:
      Product: n/a
     Features: ✗ Boot counting
               ✗ Menu timeout control
               ✗ One-shot menu timeout control
               ✗ Default entry control
               ✗ One-shot entry control
               ✗ Support for XBOOTLDR partition
               ✗ Support for passing random seed to OS
               ✗ Load drop-in drivers
               ✗ Support Type #1 sort-key field
               ✗ Support @saved pseudo-entry
               ✗ Support Type #1 devicetree field
               ✗ Boot loader sets ESP information
          ESP: n/a
         File: └─n/a

Random Seed:
 Passed to OS: no
 System Token: set
       Exists: yes

Available Boot Loaders on ESP:
          ESP: /efi (/dev/disk/by-partuuid/9f3ec8f7-b786-4760-815e-5fc48dd4cb70)
         File: ├─/EFI/systemd/systemd-bootx64.efi (systemd-boot 252.4-2-arch)
               └─/EFI/BOOT/BOOTX64.EFI (systemd-boot 252.4-2-arch)

Boot Loaders Listed in EFI Variables:
        Title: Linux Boot Manager
           ID: 0x000C
       Status: active, boot-order
    Partition: /dev/disk/by-partuuid/9f3ec8f7-b786-4760-815e-5fc48dd4cb70
         File: └─/EFI/systemd/systemd-bootx64.efi

        Title: GRUB
           ID: 0x000A
       Status: active, boot-order
    Partition: /dev/disk/by-partuuid/9f3ec8f7-b786-4760-815e-5fc48dd4cb70
         File: └─/EFI/GRUB/grubx64.efi

        Title: \EFI\systemd\systemd-bootx64.efi
           ID: 0x0010
       Status: active
    Partition: /dev/disk/by-partuuid/9f3ec8f7-b786-4760-815e-5fc48dd4cb70
         File: └─/EFI/systemd/systemd-bootx64.efi

Boot Loader Entries:
        $BOOT: /boot (/dev/disk/by-partuuid/325efcac-6225-4397-84e3-b28cdcf3ab43)

Default Boot Loader Entry:
         type: Boot Loader Specification Type #1 (.conf)
        title: Archlinux
           id: arch.conf
       source: /boot/loader/entries/arch.conf
        linux: /vmlinuz-linux
       initrd: /initramfs-linux.img
               /intel-ucode.img
      options: rd.luks.name=6c2123cc-8fc6-4e6b-810a-59fd17db67ee=root root=/dev/mapper/root rd.luks.options=fido2-device=auto rw

/boot/loader/ files

[root@marder ~]# tree /boot/loader/
/boot/loader/
├── entries
│   └── arch.conf
├── entries.srel
└── loader.conf
2 directories, 3 files

[root@marder ~]# cat /boot/loader/loader.conf
default arch.conf
timeout 3
console-mode max

[root@marder ~]# cat /boot/loader/entries/arch.conf
title Archlinux
linux /vmlinuz-linux
initrd /initramfs-linux.img
initrd /intel-ucode.img
options rd.luks.name=6c2123cc-8fc6-4e6b-810a-59fd17db67ee=root root=/dev/mapper/root rd.luks.options=fido2-device=auto rw

efibootmgr

[root@marder ~]# efibootmgr
BootCurrent: 000A
Timeout: 0 seconds
BootOrder: 000C,000A,000D,000E,000B,0000,0001,0002,0003,0004,0005,0006,0007,0008,0009,000F
Boot0000  Startup Menu  FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)0000000049535048
Boot0001  System Information    FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)f1000000000049535048
Boot0002  Bios Setup    FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)100f0000000049535048
Boot0003  3rd Party Option ROM Management       FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)f3000000000049535048
Boot0004  System Diagnostics    FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)f2000000000049535048
Boot0005  System Diagnostics    FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)01f20000000049535048
Boot0006  System Diagnostics    FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)02f20000000049535048
Boot0007  System Diagnostics    FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)03f20000000049535048
Boot0008  Boot Menu     FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)f9000000000049535048
Boot0009  HP Recovery   FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)110f0000000049535048
Boot000A* GRUB  HD(1,GPT,9f3ec8f7-b786-4760-815e-5fc48dd4cb70,0x800,0x64000)/File(\EFI\GRUB\grubx64.efi)1400000049535048
Boot000B* SAMSUNG MZVLW512HMJP-000H1-S36ENX0J113803     BBS(HD,SAMSUNG MZVLW512HMJP-000H1-S36ENX0J113803,0x400)/PciRoot(0x0)/Pci(0x1d,0x0)/Pci(0x0,0x0)/NVMe(0x1,00-25-38-B1-71-B6-46-2A)01001000000049535048
Boot000C* Linux Boot Manager    HD(1,GPT,9f3ec8f7-b786-4760-815e-5fc48dd4cb70,0x800,0x64000)/File(\EFI\systemd\systemd-bootx64.efi)
Boot000D* 16101844001513        PciRoot(0x0)/Pci(0x14,0x0)/USB(0,0)4eac0881119f594d850ee21a522c59b20980000049535048
Boot000E  USB:          BBS(65535,,0x0)/PciRoot(0x0)/Pci(0x14,0x0)ffff0b80000049535048
Boot000F  Network Boot  FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)120f0000000049535048
Boot0010* \EFI\systemd\systemd-bootx64.efi      PciRoot(0x0)/Pci(0x1d,0x0)/Pci(0x0,0x0)/NVMe(0x1,00-25-38-B1-71-B6-46-2A)/HD(1,GPT,9f3ec8f7-b786-4760-815e-5fc48dd4cb70,0x800,0x64000)/File(\EFI\systemd\systemd-bootx64.efi)0000000049535048
Boot0011* IPV6 Network - Intel(R) Ethernet Connection (4) I219-V        PciRoot(0x0)/Pci(0x1f,0x6)/MAC(40b034eccf81,0)/IPv6([::]:<->[::]:,0,0)4eac0881119f594d850ee21a522c59b20000000049535048

Last edited by jhq (2022-12-31 23:45:15)

Offline

#2 2022-12-31 13:46:33

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,466

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

You have no kernel on /efi, I would assume. The kernel and initramfs need to be on the ESP or on a separate XBOOTLDR partition.

OK, I need to read better. Is the XBOOTLDR partition on the same disk?

Last edited by Scimmia (2022-12-31 13:47:52)

Offline

#3 2022-12-31 13:50:19

Head_on_a_Stick
Member
From: London
Registered: 2014-02-20
Posts: 7,680
Website

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

jhq wrote:

and additionally mount an "Extended Boot Loader Partition" (XBOOTLDR) to /boot

Is the UUID for the XBOOTLDR partition correct? Which filesystem are you using for that partition? If it's not FAT does your UEFI firmware support it and if not have you added the EFI filesystem driver to /EFI/systemd/drivers/ on the ESP?

Offline

#4 2022-12-31 13:50:54

jhq
Member
Registered: 2022-12-31
Posts: 10

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

Yes, they are on the same disk.

[root@marder ~]# lsblk
NAME                     MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINTS
nvme0n1                  259:0    0 476.9G  0 disk
├─nvme0n1p1              259:1    0   200M  0 part  /efi
├─nvme0n1p2              259:2    0     2G  0 part  /boot
└─nvme0n1p3              259:3    0 474.7G  0 part
  └─cryptlvm             254:0    0 474.7G  0 crypt
    ...

Offline

#5 2022-12-31 14:05:35

jhq
Member
Registered: 2022-12-31
Posts: 10

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

Head_on_a_Stick wrote:
jhq wrote:

and additionally mount an "Extended Boot Loader Partition" (XBOOTLDR) to /boot

Is the UUID for the XBOOTLDR partition correct? Which filesystem are you using for that partition? If it's not FAT does your UEFI firmware support it and if not have you added the EFI filesystem driver to /EFI/systemd/drivers/ on the ESP?

Ah thanks, there is a magic UUID: https://uapi-group.org/specifications/s … ification/. Currently, I have on /boot:

/dev/nvme0n1p2: UUID="258f1633-e700-4a11-b449-17f1ad080695" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="Linux filesystem" PARTUUID="325efcac-6225-4397-84e3-b28cdcf3ab43"

Will try to change it and reboot now (not to forget to change fstab). But should bootctl install not complain about that? It did complain about the missing label, which I then added.

Offline

#6 2022-12-31 14:10:37

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,466

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

You'll also need to load drivers or switch it to FAT. Chances that your firmware can read ext4 are vanishingly small.

Offline

#7 2022-12-31 14:48:32

Head_on_a_Stick
Member
From: London
Registered: 2014-02-20
Posts: 7,680
Website

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

jhq wrote:

Currently, I have on /boot:

/dev/nvme0n1p2: UUID="258f1633-e700-4a11-b449-17f1ad080695" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="Linux filesystem" PARTUUID="325efcac-6225-4397-84e3-b28cdcf3ab43"

Will try to change it and reboot now (not to forget to change fstab)

You are conflating PARTUUID with the partition GUID. They are not the same thing.

Use gdisk to view and change the partition GUID ("Partition GUID code" in the partition information section). You don't need to change fstab because that deals with filesystem UUIDs.

EDIT: the term is actually "partition GUID", sorry.

Last edited by Head_on_a_Stick (2022-12-31 14:51:36)

Offline

#8 2022-12-31 15:13:02

jhq
Member
Registered: 2022-12-31
Posts: 10

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

Head_on_a_Stick wrote:

You are conflating PARTUUID with the partition GUID. They are not the same thing.

Use gdisk to view and change the partition GUID ("Partition GUID code" in the partition information section). You don't need to change fstab because that deals with filesystem UUIDs.

EDIT: the term is actually "partition GUID", sorry.

Thanks! I noticed by myself the hard way roll

Current status:
I did change the partition to fat32. Re-installed linux, intel-ucode packages, ran bootmgr install, created entries.

Now, I see the entry but cannot boot because I get "error preparing initrd: device error"

The wiki should contain a note on the partition type of XBOOTLDR. I will propose a change once I got it working, if nobody else does it before.

Offline

#9 2022-12-31 15:18:08

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,466

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

It's already there. https://wiki.archlinux.org/title/System … g_XBOOTLDR

The real question, though, is why you're bothering with an XBOOTLDR partition anyway instead of just using the ESP?

Last edited by Scimmia (2022-12-31 15:18:32)

Offline

#10 2022-12-31 15:32:41

jhq
Member
Registered: 2022-12-31
Posts: 10

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

Sorry, i meant that it shoud most probaly be a fat32 partition, so the filesystem type. The note for the partition type GIUID is already there.

The real question, though, is why you're bothering with an XBOOTLDR partition anyway instead of just using the ESP?

That is a good question. I wanted enough space on /boot when I first installed arch (quite some time ago). With other distros, I often had full /boot partitions due to old versioned kernels. I might change that now.

Offline

#11 2022-12-31 15:34:58

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,466

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

So make the ESP 2G

Offline

#12 2022-12-31 15:42:24

jhq
Member
Registered: 2022-12-31
Posts: 10

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

Good point. No idea why I did not do that, I have some faint memories about a problem with larger ESP.

Offline

#13 2022-12-31 15:54:38

jhq
Member
Registered: 2022-12-31
Posts: 10

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

Ok, I changed to just using the ESP.  I still get "error preparing initrd: device error". bootctl does not complain about anything, all the files are there. Any idea how to get more info? The error does not seem to be very common in the internet.

Last edited by jhq (2022-12-31 15:55:02)

Offline

#14 2022-12-31 16:01:39

Head_on_a_Stick
Member
From: London
Registered: 2014-02-20
Posts: 7,680
Website

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

Are the initrd & kernel images actually on the ESP? Did you re-run the 'bootctl install' command with the options appropriate for this new configuration (ie, without the --boot-path option)?

You need to share actual commands, configuration files and output. Vague descriptions aren't really good enough.

Offline

#15 2022-12-31 16:28:52

jhq
Member
Registered: 2022-12-31
Posts: 10

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

Here is what I did:

  • Mount the ESP as /boot, change fstab accordingly

  • Remove the partition type GUID from my (former) XBOOTLDR partition

  • Run

    bootctl install

    (no options, it finds the correct place of the ESP, efi files are then present on /boot/EFI) 

  • Use the same entries and loader.conf as in my first post, copied them to the /boot partition (from the old  XBOOTLDR)

  • Run

    pacman -S linux systemd intel-ucode
  • Check with

    bootctl

    that all files referenced in the entries are found (it does tell if they are not)

Now, what I get:

  • The correct list of entries when booting, including "Arch Linux"

  • An error "error preparing initrd: device error" when selecting this entry

I assume the actual boot parameters for the kernel should not matter, as boot fails at initrd.

For the actual output, I would first need to connect my rescue system to the LAN somehow.

Offline

#16 2022-12-31 17:02:25

jhq
Member
Registered: 2022-12-31
Posts: 10

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

Ok, here are the files and outputs. Thanks for having a look!

###############################################################################
[root@archiso /]# parted -l
Model:   (scsi)
Disk /dev/sda: 15.5GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start   End     Size    Type     File system  Flags
 2      84.0kB  67.2MB  67.1MB  primary  fat16        esp     (note: live USB stick)


Model: SAMSUNG MZVLW512HMJP-000H1 (nvme)
Disk /dev/nvme0n1: 512GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name              Flags
 1      1049kB  211MB   210MB   fat16        EFI               boot, esp
 2      211MB   2358MB  2147MB  fat32        Linux filesystem
 3      2358MB  512GB   510GB                Linux dm-crypt



###############################################################################
[root@archiso /]# lsblk
NAME                     MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINTS
loop0                      7:0    0 524.5M  1 loop
sda                        8:0    1  14.5G  0 disk
├─sda1                     8:1    1   639M  0 part
└─sda2                     8:2    1    64M  0 part
nvme0n1                  259:0    0 476.9G  0 disk
├─nvme0n1p1              259:1    0   200M  0 part  /boot
├─nvme0n1p2              259:2    0     2G  0 part
└─nvme0n1p3              259:3    0 474.7G  0 part
  └─root                 254:0    0 474.7G  0 crypt
    ├─tank-root-real     254:1    0 374.7G  0 lvm
    │ ├─tank-root        254:2    0 374.7G  0 lvm   /
    │ └─tank-root_snap   254:4    0 374.7G  0 lvm
    └─tank-root_snap-cow 254:3    0   100G  0 lvm
      └─tank-root_snap   254:4    0 374.7G  0 lvm


###############################################################################
[root@archiso /]# tree /boot
/boot
├── EFI
│   ├── BOOT
│   │   └── BOOTX64.EFI
│   ├── GRUB
│   │   └── grubx64.efi
│   ├── Linux
│   └── systemd
│       └── systemd-bootx64.efi
├── initramfs-linux-fallback.img
├── initramfs-linux.img
├── intel-ucode.img
├── loader
│   ├── entries
│   │   └── arch.conf
│   ├── entries.srel
│   ├── loader.conf
│   └── random-seed
└── vmlinuz-linux



###############################################################################
archiso# file /boot/initramfs-linux*
/boot/initramfs-linux-fallback.img: Zstandard compressed data (v0.8+), Dictionary ID: None
/boot/initramfs-linux.img:          Zstandard compressed data (v0.8+), Dictionary ID: None



###############################################################################
[root@archiso /]# bootctl
/boot/loader/loader.conf:2: Unknown line 'defalt', ignoring.
System:
      Firmware: UEFI 2.50 (HP 1.02)
 Firmware Arch: x64
   Secure Boot: disabled (disabled)
  TPM2 Support: no
  Boot into FW: supported

Current Boot Loader:
      Product: systemd-boot 243.162-2-arch
     Features: ✓ Boot counting
               ✓ Menu timeout control
               ✓ One-shot menu timeout control
               ✓ Default entry control
               ✓ One-shot entry control
               ✓ Support for XBOOTLDR partition
               ✓ Support for passing random seed to OS
               ✗ Load drop-in drivers
               ✗ Support Type #1 sort-key field
               ✗ Support @saved pseudo-entry
               ✗ Support Type #1 devicetree field
               ✓ Boot loader sets ESP information
          ESP: /dev/disk/by-partuuid/e8f5adcb-f94c-4950-9b8d-1e5974475868
         File: └─/EFI/BOOT/loader.efi

Random Seed:
 Passed to OS: yes
 System Token: set
       Exists: yes

Available Boot Loaders on ESP:
          ESP: /boot (/dev/disk/by-partuuid/e8f5adcb-f94c-4950-9b8d-1e5974475868)
         File: ├─/EFI/systemd/systemd-bootx64.efi (systemd-boot 252.4-2-arch)
               └─/EFI/BOOT/BOOTX64.EFI (systemd-boot 252.4-2-arch)

Boot Loaders Listed in EFI Variables:
        Title: Linux Boot Manager
           ID: 0x0012
       Status: active, boot-order
    Partition: /dev/disk/by-partuuid/e8f5adcb-f94c-4950-9b8d-1e5974475868
         File: └─/EFI/systemd/systemd-bootx64.efi

        Title: \EFI\systemd\systemd-bootx64.efi
           ID: 0x0010
       Status: active
    Partition: /dev/disk/by-partuuid/9f3ec8f7-b786-4760-815e-5fc48dd4cb70
         File: └─/EFI/systemd/systemd-bootx64.efi

Boot Loader Entries:
        $BOOT: /boot (/dev/disk/by-partuuid/e8f5adcb-f94c-4950-9b8d-1e5974475868)

        Title: \EFI\systemd\systemd-bootx64.efi
           ID: 0x0010
       Status: active
    Partition: /dev/disk/by-partuuid/9f3ec8f7-b786-4760-815e-5fc48dd4cb70
         File: └─/EFI/systemd/systemd-bootx64.efi

Boot Loader Entries:
        $BOOT: /boot (/dev/disk/by-partuuid/e8f5adcb-f94c-4950-9b8d-1e5974475868)


        Title: \EFI\systemd\systemd-bootx64.efi
           ID: 0x0010
       Status: active
    Partition: /dev/disk/by-partuuid/9f3ec8f7-b786-4760-815e-5fc48dd4cb70
         File: └─/EFI/systemd/systemd-bootx64.efi

Boot Loader Entries:
        $BOOT: /boot (/dev/disk/by-partuuid/e8f5adcb-f94c-4950-9b8d-1e5974475868)

Default Boot Loader Entry:
         type: Boot Loader Specification Type #1 (.conf)
        title: Arch Linux Hello
           id: arch.conf
       source: /boot/loader/entries/arch.conf
        linux: /vmlinuz-linux
       initrd: /initramfs-linux.img
               /intel-ucode.img
      options: rd.luks.name=6c2123cc-8fc6-4e6b-810a-59fd17db67ee=root root=/dev/mapper/tank-root rd.luks.options=f>


###############################################################################
[root@archiso /]# efibootmgr
BootCurrent: 000D
Timeout: 0 seconds
BootOrder: 0012,000D,000E,000B,0000,0001,0002,0003,0004,0005,0006,0007,0008,0009,000F
Boot0000  Startup Menu  FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)000
0000049535048
Boot0001  System Information    FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee77
57ca)f1000000000049535048
Boot0002  Bios Setup    FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)100
f0000000049535048
Boot0003  3rd Party Option ROM Management       FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-45
3d-aceb-c350ee7757ca)f3000000000049535048
Boot0004  System Diagnostics    FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee77
57ca)f2000000000049535048
Boot0005  System Diagnostics    FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee77
57ca)01f20000000049535048
Boot0006  System Diagnostics    FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee77
57ca)02f20000000049535048
Boot0007  System Diagnostics    FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee77
57ca)03f20000000049535048
Boot0008  Boot Menu     FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)f90
00000000049535048
Boot0009  HP Recovery   FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)110
f0000000049535048
Boot000B* SAMSUNG MZVLW512HMJP-000H1-S36ENX0J113803     BBS(HD,SAMSUNG MZVLW512HMJP-000H1-S36ENX0J113803,0x400)/Pci
Root(0x0)/Pci(0x1d,0x0)/Pci(0x0,0x0)/NVMe(0x1,00-25-38-B1-71-B6-46-2A)01001000000049535048
Boot000D* 16101844001513        PciRoot(0x0)/Pci(0x14,0x0)/USB(0,0)4eac0881119f594d850ee21a522c59b20980000049535048
Boot000E  USB:          BBS(65535,,0x0)/PciRoot(0x0)/Pci(0x14,0x0)ffff0b80000049535048
Boot000F  Network Boot  FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)120
f0000000049535048
Boot0010* \EFI\systemd\systemd-bootx64.efi      PciRoot(0x0)/Pci(0x1d,0x0)/Pci(0x0,0x0)/NVMe(0x1,00-25-38-B1-71-B6-
46-2A)/HD(1,GPT,9f3ec8f7-b786-4760-815e-5fc48dd4cb70,0x800,0x64000)/File(\EFI\systemd\systemd-bootx64.efi)000000004
9535048
Boot0011* IPV6 Network - Intel(R) Ethernet Connection (4) I219-V        PciRoot(0x0)/Pci(0x1f,0x6)/MAC(40b034eccf81
,0)/IPv6([::]:<->[::]:,0,0)4eac0881119f594d850ee21a522c59b20000000049535048
Boot0012* Linux Boot Manager    HD(1,GPT,e8f5adcb-f94c-4950-9b8d-1e5974475868,0x800,0x64000)/File(\EFI\systemd\syst
emd-bootx64.efi)1400000049535048



###############################################################################
archiso# cat /etc/mkinitcpio.conf
# vim:set ft=sh
# MODULES
# The following modules are loaded before any boot hooks are
# run.  Advanced users may wish to specify all system modules
# in this array.  For instance:
#     MODULES=(usbhid xhci_hcd)
MODULES=()

# BINARIES
# This setting includes any additional binaries a given user may
# wish into the CPIO image.  This is run last, so it may be used to
# override the actual binaries included by a given hook
# BINARIES are dependency parsed, so you may safely ignore libraries
BINARIES=()

# FILES
# This setting is similar to BINARIES above, however, files are added
# as-is and are not parsed in any way.  This is useful for config files.
FILES=()

# HOOKS
# This is the most important setting in this file.  The HOOKS control the
# modules and scripts added to the image, and what happens at boot time.
# Order is important, and it is recommended that you do not change the
# order in which HOOKS are added.  Run 'mkinitcpio -H <hook name>' for
# help on a given hook.
# 'base' is _required_ unless you know precisely what you are doing.
# 'udev' is _required_ in order to automatically load modules
# 'filesystems' is _required_ unless you specify your fs modules in MODULES
# Examples:
##   This setup specifies all modules in the MODULES setting above.
##   No RAID, lvm2, or encrypted root is needed.
#    HOOKS=(base)
#
##   This setup will autodetect all modules for your system and should
##   work as a sane default
#    HOOKS=(base udev autodetect modconf block filesystems fsck)
#
##   This setup will generate a 'full' image which supports most systems.
##   No autodetection is done.
#    HOOKS=(base udev modconf block filesystems fsck)
#
##   This setup assembles a mdadm array with an encrypted root file system.
##   Note: See 'mkinitcpio -H mdadm_udev' for more information on RAID devices.
#    HOOKS=(base udev modconf keyboard keymap consolefont block mdadm_udev encrypt filesystems fsck)
#
##   This setup loads an lvm2 volume group.
#    HOOKS=(base udev modconf block lvm2 filesystems fsck)
#
##   NOTE: If you have /usr on a separate partition, you MUST include the
#    usr and fsck hooks.
HOOKS=(base udev autodetect modconf kms keyboard keymap consolefont block filesystems fsck)
#HOOKS=(base udev autodetect keyboard keymap consolefont modconf block encrypt lvm2 filesystems fsck systemd sd-vconsole sd-encrypt)

# COMPRESSION
# Use this to compress the initramfs image. By default, zstd compression
# is used. Use 'cat' to create an uncompressed image.
#COMPRESSION="zstd"
#COMPRESSION="gzip"
#COMPRESSION="bzip2"
#COMPRESSION="lzma"
#COMPRESSION="xz"
#COMPRESSION="lzop"
#COMPRESSION="lz4"

# COMPRESSION_OPTIONS
# Additional options for the compressor
#COMPRESSION_OPTIONS=()

# MODULES_DECOMPRESS
# Decompress kernel modules during initramfs creation.
# Enable to speedup boot process, disable to save RAM
# during early userspace. Switch (yes/no).
#MODULES_DECOMPRESS="yes"



###############################################################################
archiso# cat /boot/loader/loader.conf
defalt arch.conf
timeout 3
console-mode max



###############################################################################
archiso# cat /boot/loader/entries/arch.conf
title Arch Linux Hello
linux /vmlinuz-linux
initrd /initramfs-linux.img
initrd /intel-ucode.img
options rd.luks.name=6c2123cc-8fc6-4e6b-810a-59fd17db67ee=root root=/dev/mapper/tank-root rd.luks.options=fido2-device=auto rw

Last edited by jhq (2022-12-31 17:03:16)

Offline

#17 2022-12-31 20:31:16

Head_on_a_Stick
Member
From: London
Registered: 2014-02-20
Posts: 7,680
Website

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

For /boot/loader/entries/arch.conf the µcode initrd line should come before the initramfs.

Do you now have two EFI system partitions on your disk? /dev/nvme0n1p1 is mounted under /boot but is only 200MiB. /dev/nvme0n1p2 is not mounted but is 2GiB, which would seem to be the intended, new, enlarged ESP. Your motherboard's UEFI firmware ("BIOS") might not be able to handle multiple ESPs sanely.

Offline

#18 2022-12-31 23:43:14

jhq
Member
Registered: 2022-12-31
Posts: 10

Re: [SOLVED] systemd-boot does not show entries on boot, bootctl does

Head_on_a_Stick wrote:

For /boot/loader/entries/arch.conf the µcode initrd line should come before the initramfs.

That was it! Thanks a lot! It makes so much sense actually.

https://i.imgflip.com/7604fk.jpg

Do you now have two EFI system partitions on your disk? /dev/nvme0n1p1 is mounted under /boot but is only 200MiB. /dev/nvme0n1p2 is not mounted but is 2GiB, which would seem to be the intended, new, enlarged ESP. Your motherboard's UEFI firmware ("BIOS") might not be able to handle multiple ESPs sanely.

The old partition of 2 GB is just a regular partition since I reset the label. It is not recognized by my BIOS (I can browse all EFI partitions there). But I can see the one of the live system on the USB thumb drive, so it seems not to be a problem in this case at least.

moderator edit -- replaced oversized image with link.
Pasting pictures and code

Last edited by 2ManyDogs (2022-12-31 23:50:33)

Offline

Board footer

Powered by FluxBB