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 key
It 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_LUKS
sda 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-linux
in /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 Interface
If I choose the first option I get
Reboot Into Firmware Interface
which 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