[Solved] Grub shows up in boot options but won't boot
First time arch installer here. I just installed arch with grub on a uefi laptop. Everything seemed fine until I rebooted and ended up in uefi settings instead of grub. The grub entry shows up in the boot options but the computer doesn't seem to care. What could be wrong?
I dont know what information is useful to narrow the problem down so just tell me what logs are necessary an I'll post them.
Edit: I tried installing using the archinstall script in case I misunderstood the install instructions, but still not booting. Tried both grub and systemd-boot. The laptop is an Asus vivobook S 14 model K3402Z and even though I have been running fedora on it for the last year I believe the issues have something to do with the laptop hardware.
Edit 2: The issue has been resolved. Turns out the step that ruined the install was when I formatted the NVME drive according to this section of the wiki it messed something up, so reverting that fixed everything.
My first guess would be either messing up the paths for grub-install and/or grub-mkconfig, or just forgetting grub-mkconfig altogether. Grub should "just work" as long as those commands were run properly and you aren't using Secure Boot.
I have mounted my EFI partition to /mnt/boot and after chrooting into the root directory I ran grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=UEFI-GRUB. Then I ran grub-mkconfig -o /boot/grub/grub.cfg. Is there anything wrong with any of these commands? I got no errors when I ran them.
instead of putting a grub config in /boot/grub you could also try embedding it directly with grub-mkimage. you would need to point to the grub config that you have with -c and add all the needed modules as extra arguments at the end.
it is possible that the grub image you installed is just not looking for the config file at the right place.
or maybe try putting the grub.cfg in the same directory as the grubx64.efi
is secure boot enabled in the firmware? It is possible that you have a signed grub binary installed but the module signing is not yet rolled out. Edit: my mistake: if you are using grub with shim then all the necessary modules need to be baked into the grub binary. maybe grub was not installed correctly?
I have gone through the entire arch install process twice and the GRUB install maybe 5 times or so. Still the same. I tries installing to vritualbox before doing it on physical hardware and that booted fine so I suspect it might have something to do secure boot. I found this reddit thread that mentions "adding grub64x.efi to trusted in my bios through secure boot" but I'm not sure how to do that.