Skip to main content
Topic solved
This topic has been marked as solved and requires no further attention.
Topic: [SOLVED] Fresh install, GRUB not creating a boot entry. (Read 2207 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

[SOLVED] Fresh install, GRUB not creating a boot entry.

Hello,

I am running a fresh install of Artix and after following all steps in the installation guide I was presented with no boot entry for GRUB.

I have tried the solutions listed in a few other forum posts, namely
https://forum.artixlinux.org/index.php/topic,1398.0.html
(Installing GRUB and then the kernel)
and one from the Arch wiki
https://bbs.archlinux.org/viewtopic.php?id=279958
(Running through the installation again)

I have tried reinstalling GRUB a few other times and also manually adding the boot entry but it seems that my BIOS does not have that functionality.

I am unsure what to include in this post, as this is my first time posting on a forum for Linux, so I will happily supply anything that is asked of me.

I apologize for being a noob, and thank you for you help!

EDIT:
I tried using efibootmgr to manually add the entry as described here
https://wiki.archlinux.org/title/Unified_Extensible_Firmware_Interface#efibootmgr (obviously changing the command for my system)
This did not work either.

EDIT 2:

After booting in how reply 1 described using the ISO I tried running efibootmgr again to create an entry
I ran
efibootmgr --create --disk /devnvme1n1 --part 1 --loader /boot/efi/EFI/grub/grubx64.efi --label "GRUB Boot Manager" --unicode
and got the output

Spoiler (click to show/hide)

However, still no entry in the BIOS after rebooting.

EDIT 2:
My problem has been solved, thank you to all who helped out!
The solution that ended up working was moving the grubx64.efi file to /boot/efi/EFI/BOOT/bootx64.efi as described in reply #20.

Re: Fresh install, GRUB not creating a boot entry.

Reply #1
If you boot an Artix iso there is an option at the bottom of the onscreen list to find efi boot things or something like that - if you are lucky it might find your OS and even give it an entry in the BIOS EFI menu, if you are mostly installed correctly. It can take a while to search the drives. Older computers don't have EFI boot, and newer ones might need various settings in BIOS to work. The Artix and Arch wiki have some useful info:

https://wiki.artixlinux.org/Main/Installation#Boot_Loader

Re: Fresh install, GRUB not creating a boot entry.

Reply #2
Alright, I was able to find my bootloader inside the ISO and successfully boot into my system through GRUB.
However, there is still no boot entry, but at least I know it CAN boot so I can try and create it.

Re: Fresh install, GRUB not creating a boot entry.

Reply #3
Alright, I was able to find my bootloader inside the ISO and successfully boot into my system through GRUB.
However, there is still no boot entry, but at least I know it CAN boot so I can try and create it.
And once you were able to boot to your system, did you just try sudo grud-install /dev/sd<the root partition>?

Re: Fresh install, GRUB not creating a boot entry.

Reply #4
what is your hardware?

Re: Fresh install, GRUB not creating a boot entry.

Reply #5

This is the output of hwinfo --short
Spoiler (click to show/hide)

Re: Fresh install, GRUB not creating a boot entry.

Reply #6
Alright, I was able to find my bootloader inside the ISO and successfully boot into my system through GRUB.
However, there is still no boot entry, but at least I know it CAN boot so I can try and create it.
And once you were able to boot to your system, did you just try sudo grud-install /dev/sd<the root partition>?
Yes, I did this just now and still no dice.

Re: Fresh install, GRUB not creating a boot entry.

Reply #7
Here is the content of my /etc/default/grub to possibly compare with what you have:

Spoiler (click to show/hide)

Re: Fresh install, GRUB not creating a boot entry.

Reply #8
It seems from the description not related to entries in grub.cfg missing, but in the BIOS efi list. Yet in the first post the efibootmgr mentions a Grub entry, so it must be nearly there.
You need an EFI partition which you apparently have. This must be mounted on /boot/efi, if /boot is on it's own partition this must be mounted first on /boot, check /etc/fstab is correct, then run mkinitcpio -P if changes were made. Once you have /boot/efi mounted in your Artix install (you can do all this in a chroot and manually mount /boot/efi or boot with the help of the  iso) then run from within your new Artix OS:
Code: [Select]
# grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=grub

With apparently 3 or 4 disks present, there could be some confusion possible - perhaps temporarily disable some from booting in the BIOS or even unplug / remove them to simplify matters until it's working.You will need the disk with the EFI partition and the Artix one (the NVMe drive it seems) if different. In my BIOS I had no obvious method to add EFI boot entries, but it was required and there was indeed a way, consulting the relevant Dell (in my case)  manual online showed how to do it.

Re: Fresh install, GRUB not creating a boot entry.

Reply #9
It seems from the description not related to entries in grub.cfg missing, but in the BIOS efi list. Yet in the first post the efibootmgr mentions a Grub entry, so it must be nearly there.
You need an EFI partition which you apparently have. This must be mounted on /boot/efi, if /boot is on it's own partition this must be mounted first on /boot, check /etc/fstab is correct, then run mkinitcpio -P if changes were made. Once you have /boot/efi mounted in your Artix install (you can do all this in a chroot and manually mount /boot/efi or boot with the help of the  iso) then run from within your new Artix OS:
Code: [Select]
# grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=grub

With apparently 3 or 4 disks present, there could be some confusion possible - perhaps temporarily disable some from booting in the BIOS or even unplug / remove them to simplify matters until it's working.You will need the disk with the EFI partition and the Artix one (the NVMe drive it seems) if different. In my BIOS I had no obvious method to add EFI boot entries, but it was required and there was indeed a way, consulting the relevant Dell (in my case)  manual online showed how to do it.

Alright, after unplugging all of my drives mounting my efi partition to /boot/efi as before and reinstalling grub it still is not functioning. I have been looking around to see how to manually add boot entries in my bios (MSI Click Bios 5) and the only info I found was in this forum post
https://forum-en.msi.com/index.php?threads/click-bios-5-uefi-boot-entry-management.294360/

“ I've contacted MSI technical support. The outcome of our chatting was:
  - there are no options to manage UEFI boot entries from Click BIOS 5;
  - they are not planning to implement them.”

So I am kind of at a loss here, I may try to move the actual EFI file around and see if this changes anything.


Re: Fresh install, GRUB not creating a boot entry.

Reply #10
It seems from the description not related to entries in grub.cfg missing, but in the BIOS efi list. Yet in the first post the efibootmgr mentions a Grub entry, so it must be nearly there.
You need an EFI partition which you apparently have. This must be mounted on /boot/efi, if /boot is on it's own partition this must be mounted first on /boot, check /etc/fstab is correct, then run mkinitcpio -P if changes were made. Once you have /boot/efi mounted in your Artix install (you can do all this in a chroot and manually mount /boot/efi or boot with the help of the  iso) then run from within your new Artix OS:
Code: [Select]
# grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=grub

With apparently 3 or 4 disks present, there could be some confusion possible - perhaps temporarily disable some from booting in the BIOS or even unplug / remove them to simplify matters until it's working.You will need the disk with the EFI partition and the Artix one (the NVMe drive it seems) if different. In my BIOS I had no obvious method to add EFI boot entries, but it was required and there was indeed a way, consulting the relevant Dell (in my case)  manual online showed how to do it.

Alright, after unplugging all of my drives mounting my efi partition to /boot/efi as before and reinstalling grub it still is not functioning. I have been looking around to see how to manually add boot entries in my bios (MSI Click Bios 5) and the only info I found was in this forum post
https://forum-en.msi.com/index.php?threads/click-bios-5-uefi-boot-entry-management.294360/

“ I've contacted MSI technical support. The outcome of our chatting was:
  - there are no options to manage UEFI boot entries from Click BIOS 5;
  - they are not planning to implement them.”

So I am kind of at a loss here, I may try to move the actual EFI file around and see if this changes anything.




If you are running in bios then efi will not work and vice-versa
Your hardware setting have to match your installation.

Re: Fresh install, GRUB not creating a boot entry.

Reply #11
It's hidden in a spoiler in the first post, but this seems to be EFI:

Quote
I ran
efibootmgr --create --disk /devnvme1n1 --part 1 --loader /boot/efi/EFI/grub/grubx64.efi --label "GRUB Boot Manager" --unicode
and got the output

BootCurrent: 0005
Timeout: 2 seconds
BootOrder: 0000,0005,0006,0004,0001,0003
Boot0001* Hard Drive    BBS(HD,,0x0)/VenHw(5ce8128b-2cec-40f0-8372-80640e3dc858,0200)
Boot0003  Windows Boot Manager  HD(2,GPT,297e9aef-059f-4ff5-81e6-54220a803a5a,0x800,0x32000)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)
Boot0004* USB HDD       BBS(HD,,0x0)/VenHw(5ce8128b-2cec-40f0-8372-80640e3dc858,0900)
Boot0005* UEFI:  USB DISK 3.0 PMAP      PciRoot(0x0)/Pci(0x14,0x0)/USB(17,0)/CDROM(1,0x18842c,0x8000)
Boot0006* UEFI:  USB DISK 3.0 PMAP, Partition 1 PciRoot(0x0)/Pci(0x14,0x0)/USB(17,0)/HD(1,MBR,0x0,0x18842c,0x2000)
Boot0000* GRUB Boot Manager     HD(1,GPT,3c41c4d6-0d5b-40fa-97ef-dc221050c4f5,0x800,0x200000)/File(\boot\efi\EFI\grub\grubx64.efi)



And here you can change your UEFI boot order in this BIOS:
https://us.msi.com/support/technical_details/DT_Boot_Priority

In the above output you can see grub getting mentioned, so efibootmgr could potentially add a UEFI boot entry to the available options you would think. I'm not sure if it's just a typo but some of that command looks suspect -  /devnvme1n1 - shouldn't there be a / after dev?

Re: Fresh install, GRUB not creating a boot entry.

Reply #12
It's hidden in a spoiler in the first post, but this seems to be EFI:

Quote
I ran
efibootmgr --create --disk /devnvme1n1 --part 1 --loader /boot/efi/EFI/grub/grubx64.efi --label "GRUB Boot Manager" --unicode
and got the output

BootCurrent: 0005
Timeout: 2 seconds
BootOrder: 0000,0005,0006,0004,0001,0003
Boot0001* Hard Drive    BBS(HD,,0x0)/VenHw(5ce8128b-2cec-40f0-8372-80640e3dc858,0200)
Boot0003  Windows Boot Manager  HD(2,GPT,297e9aef-059f-4ff5-81e6-54220a803a5a,0x800,0x32000)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)
Boot0004* USB HDD       BBS(HD,,0x0)/VenHw(5ce8128b-2cec-40f0-8372-80640e3dc858,0900)
Boot0005* UEFI:  USB DISK 3.0 PMAP      PciRoot(0x0)/Pci(0x14,0x0)/USB(17,0)/CDROM(1,0x18842c,0x8000)
Boot0006* UEFI:  USB DISK 3.0 PMAP, Partition 1 PciRoot(0x0)/Pci(0x14,0x0)/USB(17,0)/HD(1,MBR,0x0,0x18842c,0x2000)
Boot0000* GRUB Boot Manager     HD(1,GPT,3c41c4d6-0d5b-40fa-97ef-dc221050c4f5,0x800,0x200000)/File(\boot\efi\EFI\grub\grubx64.efi)



And here you can change your UEFI boot order in this BIOS:
https://us.msi.com/support/technical_details/DT_Boot_Priority

In the above output you can see grub getting mentioned, so efibootmgr could potentially add a UEFI boot entry to the available options you would think. I'm not sure if it's just a typo but some of that command looks suspect -  /devnvme1n1 - shouldn't there be a / after dev?
Yeah, that was just a typo, I fixed it after posting.
In any case while I can change my boot order in my BIOS settings I am not able to add any new entries and there is not an option for GRUB or Artix at all when selecting.

 

Re: Fresh install, GRUB not creating a boot entry.

Reply #13
also GPT needs some empty space at the end of the drive.

Re: Fresh install, GRUB not creating a boot entry.

Reply #14
The Debian wiki suggests this including the -w flag:
https://wiki.debian.org/UEFI#efibootmgr_and_efivar
efibootmgr example 3 - add a new boot entry
Create a new boot entry, pointing to a bootloader program on disk /dev/sdb, partition 1; write a new signature to the MBR if needed; call it "debian"; the bootloader program is in \EFI\debian\grubx64.efi
# efibootmgr -c -d /dev/sdb -p 1 -w -L debian -l '\EFI\debian\grubx64.efi'

I installed Devuan a while ago and the installation automatically set everything to boot via Devuan grub which I didn't actually want, so they have it working somehow, although more recently yet on another machine I selected advance install for Devuan and didn't install Grub to avoid this, but then it wiped my efi partition and left it empty so nothing booted until it was fixed from an Artix iso. But on that one I added the new entry from the BIOS.

Edit:
Code: [Select]
$ sudo efibootmgr -c -d /dev/nvme0n1 -p 1 -w -L debian -l '\EFI\debian\grubx64.efi'
BootCurrent: 0000
Timeout: 2 seconds
BootOrder: 0001,0000,0002
Boot0000* grub  HD(1,GPT,bfd2969f-503a-4bb5-b0aa-a43f42d9b357,0x4000,0x96000)/File(\EFI\grub\grubx64.efi)
Boot0006* Windows Boot Manager  HD(2,GPT,eef60966-cfb1-44c0-9bfc-42086db2b591,0x96800,0xfa000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)57494e444f575300010000008800000078000000
4200430044004f0042004a004500430054003d007b00390064006500610038003600320063002d0035006300640064002d0034006500370030002d0061006300630031002d00660033003200620033003400340064003
4003700390035007d00000000720100000010000000040000007fff0400
Boot0001* debian        HD(1,GPT,bfd2969f-503a-4bb5-b0aa-a43f42d9b357,0x4000,0x96000)/File(\EFI\debian\grubx64.efi)
That certainly created a new entry for a non-existent debian which appeared in my BIOS uefi boot options when I tried just now. (I don't have Windows installed, that's just some relic in the BIOS from past use, or some default thing I guess.)