You are not logged in.

I have an Oryx Pro from System76 and installed Arch to a Samsung SM951 PCIe SSD. However, when I try to boot, I get
Reboot and Select proper Boot device
or Insert Boot Media in selected Boot device and press a keyIt can't find the Arch installation, although efibootmgr -v shows Arch is there. In the UEFI setup, I can see
Boot Option Priorities
Boot Option #1    [UEFI: IP4 Realtek PCIe GBE Family Controller]
Boot Option #2    [UEFI: IP6 Realtek PCIe GBE Family Controller]
Boot Option #3    [UEFI: KingstonDataTraveler 3.0PMAP, Partition 1]This is my layout:
$ lsblk -o +fstype
NAME          MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT               FSTYPE
sda             8:0    0 119.2G  0 disk  
└─sda1          8:1    0 119.2M  0 part                           crypto_LUKS
sdb             8:16   0   7.2G  0 disk                           iso9660
├─sdb1          8:17   0   686M  0 part /run/archiso/bootmnt      iso9660
└─sdb2          8:18   0    31M  0 part                           vfat
loop0           7:0    0 300.3M  1 loop /run/archiso/sfs/airootfs squashfs
nvme0n1       259:0    0 238.5G  0 disk
├─nvme0n1p1   259:1    0   199M  0 part                           vfat
├─nvme0n1p2   259:2    0     4G  0 part
└─nvme0n1p3   259:3    0 234.3G  0 part                           crypto_LUKSsda is an additional drive, sdb is the Arch USB stick, and nvme0n1 is where I'm trying to install. I used the following the following command creating the efibootmgr entry:
efibootmgr --verbose --disk /dev/nvme0n1 --part 1 --create --label Arch --loader '\vmlinuz-linux' -u "initrd=\\intel-ucode.img initrd=\\initramf-linux.img root=/dev/mapper/crypt rootflags=subvol=root cryptdevice=UUID=$UUID:crypt:allow-discards rw"where $UUID is the UUID of nvme0n1p3 in my case. This has worked in the past on other computers. Any suggestions are welcome.
Last edited by raul_l (2016-01-12 03:16:59)
Raul Laasner
Offline
Maybe the UEFI does not support booting from NVMe drives? Do you have a \EFI\BOOT\BOOTX64.EFI in nvme0n1p1?
Offline

I do not have that. I have
initramfs-linux-fallback.img  intel-ucode.img initramfs-linux.img  vmlinuz-linuxin /boot which is nvme0n1p1. Again, previously this has worked. The UEFI of this computer does support booting from NVMe drives as it came with a pre-installed Ubuntu.
Raul Laasner
Offline
Oh wait you are trying to boot the efistub directly? Hmm never mind then. Perhaps you should try systemd-boot.
Offline

If the motherboard isn't accepting new NVRAM entries then you could use the ABS to add your initrd path and other options to CONFIG_CMDLINE and just drop the kernel image into $ESP/EFI/Boot/bootx64.efi to get it to boot without NVRAM entries or boot{loader,manager}s.
Probably simpler to use systemd-boot though.
Have you tried deleting any EFI dump files?
# rm /sys/firmware/efi/efivars/dump-*https://wiki.archlinux.org/index.php/EF … bootmgr.29
Last edited by Head_on_a_Stick (2016-01-09 19:59:03)
Jin, Jîyan, Azadî
Offline

If I use systemd-boot I see
EFI Default Loader
Reboot Into Firmware InterfaceIf I choose the first option I get
Reboot Into Firmware Interfacewhich brings me back to UEFI setup. Do I have a bad UEFI implementation? I'll try to install Ubuntu again and see what they do differently.
EDIT: Installing Arch on /dev/sda, which is a SATA SSD, allows me to boot successfully if I use the efibootmgr command from my first post.
Last edited by raul_l (2016-01-09 20:23:36)
Raul Laasner
Offline

I get the farthest with Grub - at least it does something. It gives me
Welcome to GRUB!
error: no such device: 0593bd63-9465-4d6a-ab19-66269557c05c
Entering rescue mode...
grub rescue> ls
(hd0) (hd1) (hd2)
grub rescue> set
prefix=()/boot/grub
root=The UUID is correct, I don't know why it can't find it. If anyone has any luck installing Arch on an NVMe device let me know.
Last edited by raul_l (2016-01-10 17:58:06)
Raul Laasner
Offline
https://bugs.archlinux.org/task/47447
Either use grub-git or another bootloader, or maybe have /boot on an SATA drive *shrug*
Last edited by tom.ty89 (2016-01-11 08:43:40)
Offline

Thanks, I'll have a look at grub-git. I tried to have /boot on SATA but that didn't work. It still can't find the NVMe device.
Raul Laasner
Offline
When /boot is on an SATA drive, (arch-damn-old-)grub will be able find its modules and load the kernel/initramfs, in that case, whether "/" on nvme drive can be mounted is the responsible of the kernel, which relys on the root= kernel param in the bootloader entry. But well, I am not sure how grub-mkconfig deals with it, so maybe it generates an improper entry.
Last edited by tom.ty89 (2016-01-11 08:56:06)
Offline

Sorry for the confusion, systemd-boot in fact works! I must have done something wrong the first time.
Raul Laasner
Offline