You are not logged in.
I recently moved several of my boxes form MBR/syslinux to GPT/EFI/systemd-boot.
Each has ZFS on root and for each of them followed the same process wiwth success, until I got to the last one.
I am stuck.
I prepared the esp partition, mounted it on boot, installed systemd-boot, configured .conf files and yet the only option I get at boot is "Reboot into firmware interface".
I've been fiddling with this for hours with zero clue what could be the issue, so any help will be appreciated. This is my prod server and prolonged downtime is not good.
Here is relevant info obtained from chroot on archiso.
fdisk
Device Start End Sectors Size Type
/dev/nvme1n1p1 2048 487423 485376 237M EFI System
/dev/nvme1n1p2 487424 2000408575 1999921152 953.6G Linux filesystem
# bootctl install
Copied "/usr/lib/systemd/boot/efi/systemd-bootx64.efi" to "/boot/EFI/systemd/systemd-bootx64.efi".
Copied "/usr/lib/systemd/boot/efi/systemd-bootx64.efi" to "/boot/EFI/BOOT/BOOTX64.EFI".
Random seed file /boot/loader/random-seed successfully refreshed (32 bytes).
Created EFI boot entry "Linux Boot Manager".
#bootctl
# bootctl
System:
Firmware: n/a (n/a)
Firmware Arch: x64
Secure Boot: disabled (setup)
TPM2 Support: yes
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:
System Token: set
Exists: yes
Available Boot Loaders on ESP:
ESP: /boot (/dev/disk/by-partuuid/d8d26c61-b943-4c9b-a7d7-ad1939f23b37)
File: ├─/EFI/systemd/systemd-bootx64.efi
└─/EFI/BOOT/BOOTX64.EFI
Boot Loaders Listed in EFI Variables:
Title: Linux Boot Manager
ID: 0x0000
Status: active, boot-order
Partition: /dev/disk/by-partuuid/d8d26c61-b943-4c9b-a7d7-ad1939f23b37
File: └─/EFI/systemd/systemd-bootx64.efi
Title: UEFI OS
ID: 0x0005
Status: active, boot-order
Partition: /dev/disk/by-partuuid/d8d26c61-b943-4c9b-a7d7-ad1939f23b37
File: └─/EFI/BOOT/BOOTX64.EFI
Boot Loader Entries:
$BOOT: /boot (/dev/disk/by-partuuid/d8d26c61-b943-4c9b-a7d7-ad1939f23b37)
#mount
/dev/nvme1n1p1 on /boot type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro)
#parted
ls /boot/
ls -l /boot/
total 62495
drwxr-xr-x 5 root root 512 Jun 9 14:25 EFI
-rwxr-xr-x 1 root root 51200 Apr 25 17:17 amd-ucode.img
-rwxr-xr-x 1 root root 38939328 Jun 9 17:13 initramfs-linux-lts-fallback.img
-rwxr-xr-x 1 root root 13794309 Jun 9 17:12 initramfs-linux-lts.img
drwxr-xr-x 3 root root 512 Jun 9 17:31 loader
-rwxr-xr-x 1 root root 11207936 Jun 9 17:12 vmlinuz-linux-lts
# cat /boot/loader/loader.conf
default arch.conf
timeout 5
console-mode max
editor no
# cat /boot/loader/entries/arch.cfg
title Arch Linux LTS
linux /vmlinuz-linux-lts
initrd /amd-ucode.img
initrd /initramfs-linux-lts.img
options zfs=fastraid/ROOT/default amd_iommu=on iommu=pt rw
# parted /dev/nvme1n1
GNU Parted 3.6
Using /dev/nvme1n1
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Model: ADATA SX8200PNP (nvme)
Disk /dev/nvme1n1: 1024GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 250MB 249MB fat32 P1 boot, esp
2 250MB 1024GB 1024GB P2
Last edited by Lockheed (2023-06-09 19:03:34)
Offline
arch.cfg isn't a valid filename, it has to be .conf
Online
Gyddmnit!
Thanks for pointing out that obvious omission.
Offline