Are both of them needed? Can I (should I) delete one?
Why do I have two?
Do the default setup instructions result in two boot entries?
grub-install — and apparently also install-grub — will by default only update /boot/efi/EFI/manjaro/grubx64.efi, but you are seeing that warning because you probably booted by way of /boot/efi/EFI/boot/bootx64.efi.
Whether you did or didn’t depends on which entry gets booted by default by your UEFI’s boot settings
I’ve only been booting from the “UEFI-Manjaro” option.
I have only a single bootable partition. The other option, “UEFI - Samsung SSD 980 PRO”, is referring to a disk that is unused, unpartitioned, and shows up as “Unknown” in the Gnome Disks app.
I have the basic Manjaro install setup, but with that extra unused SDD connected.
You could, provided that you then also remove the associated entry in the EFI boot manager.
Should you? No.
One (grubx64.efi) is the Manjaro-labeled entry in the EFI boot manager, and the other one (bootx64.efi) is the generic boot manager entry which boots the default OS, whichever one that is.
On dual-boot systems with MS-Windows, a Windows update will typically overwrite bootx64.efi with a copy of its own boot loader.
A default Manjaro installation will, but every subsequent update to the grub package will in and of itself only update grubx64.efi, not bootx64.efi. So you need to make sure they are identical.
I just installed a grub update this morning and the install-grub script updated both, grubx64.efi and bootx64.efi on my default UEFI installation:
core/update-grub 2:2.12.r283.ga4da71da-1
GNU Grub (2) Update Menu Script
core/install-grub 2:2.12.r283.ga4da71da-1
GNU Grub (2) Install Script on Updates
core/grub 2:2.12.r283.ga4da71da-1
GNU GRand Unified Bootloader (2)
Ah, this one is new to me. Should I be in the habit of cp’ing grubx64.efi to bootx64.efi after each update?
Is this something that the update itself should avoid doing (presumably for people who have a dual boot setup, which I currently don’t)?
EDIT: @heyjo’s reply seems to imply the answers: if the files are previously identical, the update will keep them in sync. If they are not identical (f.e. we installed Windows for dual boot) then update will not keep them in sync (so as not to break the dual boot).
Indeed, and this is why install-grub doesn’t replace bootx64.efi in the fallback location, if it differs.
In my case, I use rEFInd as the primary bootloader to chainload others – more importantly, I’ve moved rEFInd to the fallback location where it’s likely not to be overwritten.
:: To use the new features provided in this GRUB update, it is recommended
to install it to the MBR or UEFI. Due to potential configuration
incompatibilities, it is advised to run both, installation and generation
of configuration:
# UEFI: https://wiki.archlinux.org/title/GRUB#Installation
# BIOS: https://wiki.archlinux.org/title/GRUB#Installation_2
It isn’t entirely clear if I need to take actions. I’m guessing this is Arch Linux’s fault with the wording?
Unfortunately I won’t ask questions regarding this in the Arch forums because some of the Arch Linux moderators are known to be jerks when it comes to questions that are too inferior for their elitist mentalities.
Anyway, I assume that if I have the default Manjaro install setup, I don’t need to do anything, as per the above conversation. Or do I?
I see that Update UEFI Fallback file: /boot/efi/EFI/Manjaro/grubx64.efi is output later on during the update, which means (as per @heyjo’s answer above) that the two .efi files are being sync’d.