You are not logged in.

#1 2026-05-07 23:35:17

samdavid6
Member
Registered: 2008-09-18
Posts: 36

[SOLVED] efibootmgr trouble.

Hi all,

I am trying to install Arch on a headless mini pc.

I have followed the steps to connect via ssh and have completed the installation.

Here is my lsblk -f

 [root@archiso /]# lsblk -f
NAME        FSTYPE   FSVER            LABEL       UUID                                 FSAVAIL FSUSE% MOUNTPOINTS
loop0       squashfs 4.0                                                                              
sda         iso9660  Joliet Extension ARCH_202605 2026-05-01-06-05-08-00                              
├─sda1      iso9660  Joliet Extension ARCH_202605 2026-05-01-06-05-08-00                              
└─sda2      vfat     FAT32            ARCHISO_EFI 69F4-4294                                           
nvme0n1                                                                                               
├─nvme0n1p1 vfat     FAT32                        1535-2AAA                             981.3M     4% /boot
├─nvme0n1p2 ext4     1.0                          d7d7b446-0b16-45ef-92ba-69372528e502  426.7G     0% /
└─nvme0n1p3 swap     1                            b2ee49a2-52ad-4355-a337-6b5dccaf49a0                [SWAP]

I am currently chrooted into the system.  My ESP is /boot

I am trying to create an efibootmgr entry using

efibootmgr --create --disk /dev/nvme0n1p --part 1 --label "Arch Linux" --loader /vmlinuz-linux --unicode 'root=UUID=d7d7b446-0b16-45ef-92ba-69372528e502 rw initrd=/initramfs-linux.img'

and keep getting the error

[root@archiso /]# efibootmgr --create --disk /dev/nvme0n1p --part 1 --label "Arch Linux" --loader /vmlinuz-linux --unicode 'root=UUID=d7d7b446-0b16-45ef-92ba-69372528e502 rw initrd=/initramfs-linux.img'
Could not prepare Boot variable: No such file or directory

the files I have under /boot are

initramfs-linux.img  vmlinuz-linux

Can anyone tell me what I am doing wrong?

Last edited by samdavid6 (2026-05-08 02:18:44)

Offline

#2 2026-05-08 01:44:11

patrick4370
Member
From: Australia
Registered: 2018-07-19
Posts: 6

Re: [SOLVED] efibootmgr trouble.

samdavid6 wrote:

I am trying to create an efibootmgr entry using

efibootmgr --create --disk /dev/nvme0n1p --part 1 --label "Arch Linux" --loader /vmlinuz-linux --unicode 'root=UUID=d7d7b446-0b16-45ef-92ba-69372528e502 rw initrd=/initramfs-linux.img'

Could you try

efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "Arch Linux" --loader /vmlinuz-linux --unicode 'root=UUID=d7d7b446-0b16-45ef-92ba-69372528e502 rw initrd=/initramfs-linux.img'

I don't think you have a disk called /dev/nvme0n1p but rather /dev/nvme0n1

Offline

#3 2026-05-08 02:18:27

samdavid6
Member
Registered: 2008-09-18
Posts: 36

Re: [SOLVED] efibootmgr trouble.

HOLY COW!!!

Thank you!!

That is so weird though. 

I always thought /dev/sda was the drive and /dev/sdaX was the partition. Wondering if this is a new thing.

Offline

#4 2026-05-08 04:06:48

cryptearth
Member
Registered: 2024-02-03
Posts: 2,170

Re: [SOLVED] efibootmgr trouble.

it's about how nvme differs from ahci

hdX - ide
sdX - sata
nvmeX - well, nvme

but: nvmes have what's called "namespaces" (look up the wiki) - so we need additional designators:

nvme0 - first nvme
nvme0n1 - first namespace on first nvme, the lowercase n is the designator for namespaces
nvme0n1p1 - first partition on first namespace on first nvme, the lowercase p is the designator for partitions

also you may notice: nvme are no longer indexed by letters but by numbers starting with 0 for the first one

your error was the trailing p at the disk option
to resolve the path it has to exist (rember: in unix everything is a file)
so, what does exist:
/dev/nvme0
/dev/nvme0n1
/dev/nvme0n1p[1-3]
you gave: /dev/nvme0n1p - which justvdoes not exist as a valid path - hence you got a file not found

ok, now someone might argue: "yea, but if the designation is fixed then why doesn't efibootmgr scans for trailing p or n and removes on its own?" - don't know - but guessing: low-level tools like efibootmgr should only be used if you REALLY know what you doing - hence it's fair that it assumes you give it the correct parameters

Offline

#5 2026-05-08 05:37:39

dimich
Member
From: Kharkiv, Ukraine
Registered: 2009-11-03
Posts: 630

Re: [SOLVED] efibootmgr trouble.

cryptearth wrote:

nvme are no longer indexed by letters but by numbers starting with 0 for the first one

Not only NVMe but any block device ending with a digit. For example, second partition on loop0 device will be loop0p2. First partition on second partition on loop0 device will be loop0p2p1 etc.

Offline

#6 2026-05-08 14:16:55

samdavid6
Member
Registered: 2008-09-18
Posts: 36

Re: [SOLVED] efibootmgr trouble.

Thank you for that explanation.  Well now I know. 

I have been Arch'ing since 2008, but I keep learning stuff like this.  This is one reason why I love Arch so much.

Offline

Board footer

Powered by FluxBB