Code: Select all
# efibootmgr -c -w /dev/nvme0n1 -p 1 -L 'Debian (EFI_STUB)' -l '/EFI/debian/vmlinuz' -u 'root=UUID=$uuid ro quiet rootfstype=ext4 add_efi_memmap initrd=/EFI/debian/initrd.img'
Code: Select all
# efibootmgr -c -w /dev/nvme0n1 -p 1 -L 'Debian (EFI_STUB)' -l '/EFI/debian/vmlinuz' -u 'root=UUID=$uuid ro quiet rootfstype=ext4 add_efi_memmap initrd=/EFI/debian/initrd.img'
No, *do not* add the -w flag, I think you have to try that by itself.Bolo wrote:Code: Select all
# efibootmgr -c -w /dev/nvme0n1 -p 1 -L 'Debian (EFI_STUB)' -l '/EFI/debian/vmlinuz' -u 'root=UUID=$uuid ro quiet rootfstype=ext4 add_efi_memmap initrd=/EFI/debian/initrd.img'
Code: Select all
man efibootmgr
Code: Select all
initrd=/boot/efi/EFI/debian/initrd.img
Code: Select all
# efibootmgr -c -d /dev/nvme0n1 -p 1 -L 'Debian (EFI_STUB)' -l '/EFI/debian/vmlinuz' -u 'root=UUID=$UUID ro quiet rootfstype=ext4 add_efi_memmap initrd=/EFI/debian/initrd.img'
but as you may remember after command: parted --list, there where not any of the MBR partition table. It must not be there because since 2 years up to now I stopped formating any of my drives as MBR - but only GPT. To me it seems to that kernel did nor recognized the nvme0n1p1 partition as a esp partition and that is the main issue. That is why I will try to do fresh install on SATA SSD and check it out."............******************************************************
Warning! This MBR disk does not have a unique signature.
If this is not the first disk found by EFI, you may not be able
to boot from it without a unique signature.
Run efibootmgr with the -w flag to write a unique signature
to the disk......"
Code: Select all
efibootmgr -v --create -disk /dev/nvme0n1 --part 1 --label 'Debian (EFI_STUB)' --loader '\EFI\debian\vmlinuz' -u "root=UUID=$uuid ro quiet initrd=\\EFI\\debian\\initrd.img"
Code: Select all
export UUID=$(blkid -s UUID -o value /dev/sda3)
Code: Select all
efibootmgr -c -g -L "DEBIAN" -l '\EFI\debian\vmlinuz' -u "root=PARTUUID=$(blkid -s PARTUUID -o value /dev/sda2) ro nomodeset initrd=\\EFI\\debian\\initrd.img"
Code: Select all
cp /vmlinuz /boot/efi/EFI/debian/
cp /initrd.img /boot/efi/EFI/debian/
Code: Select all
efibootmgr -c -d /dev/nvme0n1 -p 1 -L "DEBIAN" -l '\EFI\debian\vmlinuz' -u "root=PARTUUID=$(blkid -s PARTUUID -o value /dev/nvme0n1p2) ro nomodeset initrd=\\EFI\\debian\\initrd.img"
First check that you have a script in /etc/{initramfs,kernel}/postinstall/ to copy new kernel & initrd versions to the ESP after updates, make sure it is executable and run it manually to ensure that the kernel is copied correctly — I add a message to my own zz-update-esp script that I can see during kernel upgrades.Bolo wrote:So i think I maight to mark this topic as SOLVED?
Code: Select all
efibootmgr -c -d /dev/nvme0n1 -p 1 -L "DEBIAN" -l '/EFI/debian/vmlinuz' -u "root=PARTUUID=$(blkid -s PARTUUID -o value /dev/sda2) ro nomodeset initrd=/EFI/debian/initrd.img"
Code: Select all
efibootmgr -c -d /dev/nvme0n1 -p 1 -L "HEAD_ON_A_STICK" -l '/EFI/debian/vmlinuz' -u "root=PARTUUID=$(blkid -s PARTUUID -o value /dev/nvme0n1p2) ro nomodeset initrd=/EFI/debian/initrd.img"
My motherboard's UEFI fimware is defective in many ways, but not on this one. Actually I had not even tried with Unix-style forward slashes and directly tried with DOS-style backslashes. I just tried now, and indeed it works.Head_on_a_Stick wrote: I've used EFI_STUB booting on two UEFI laptops and the Linux-style path separators were accepted on both so I am curious to know if p.H's motherboard is defective in this respect.
There are slashes in the --loader (-l) parameter too, which is to be interpreted by the UEFI firmware, not the Linux kernel. Fortunately, after reading back the created entries it appears that efibootmgr converts forward slashes into backslashes.Head_on_a_Stick wrote:At any rate the -u option is passed directly to the .efi loader, which is the kernel in this case and to suggest that the Linux kernel does not understand Linux-style path separators seems nonsensical