I am looking to re-enable Secure boot and UEFI after turning them to install tumbleweed on a second drive a few months ago. I have had a look at this post (Want to update to use UEFI) explaining switching to UEFI boot. It seems to work under the assumption that there is a /boot/efi before using Yast boot loader. I don’t believe that folder exist on my system. Do I need to do anything to create it or just switch to GRUB2 for EFI in Yast, boot into the biso and change to UEFI “for windows” mode?
~> [ -d /sys/firmware/efi ] && echo UEFI || echo BIOS
BIOS
~> -d /sys/firmware/efi && echo UEFI || echo BIOS
-d: command not found
BIOS
~> /sys/firmware/efi && echo UEFI || echo BIOS
bash: /sys/firmware/efi: No such file or directory
BIOS
I know my computer is capable of it as I had it working on my windows 10 drive before adding the second for tumbleweed. I think as it was disable when tumbleweed was installed it did not install the files for UEFI. Would switching to GRUB2 for EFI in Yast install everything required and work out of the box?
Blockquote
One thing is for sure, you can only use one method for all the booting to be done. I see you mention :Dial Boot", so take care.
Hence why I am being a bit cautious, even though I can’t see why switching to GRUB2 for EFI in Yast, boot into the biso and change to UEFI “for windows” mode wouldn’t work.
Like in the other thread (you mention it above), why would you want this? (I admit that I never asked this in the other thread, but nevertheless).
Also, when you have read the other thread, you will know that the partitioning as it is, is important. Thus why did you now show anything (in fact you did not show anything at all about your system).
And why do you do
Nobody suggested it. You seem to permute on a given command at free will. That attitude could be very dangerous.
With my limited experience what snoopy suggested seemed like it would show if the files required to use UEFI are installed.
I don’t know how I would show this through the command line, but I have one drive with windows 10 and a second with tumbleweed I haven’t made any partitions on either drive.
Just for the security of secure boot and to have windows show up in grub rather than having to press f8 on boot.
Looking at your results of fdisk -l there is an EFI System Partition (ESP) (/dev/nvme0n1p1) probably created and used by MS Windows (which was installed in UEFI mode).
This part confuses me as I have tried finding that file path in the file explorer while showing hidden files and can not find it. Does that mean I have nothing to delete or does it have to be done in the terminal? I am not familiar with how I would do that yet
Just to explain a bit more: switching to GRUB2 for EFI may lead to errors. Because you did not boot with UEFI, your kernel is not seeing the EFI information.
However, if you already have your EFI partition mounted at “/boot/efi”, you can work around that.
If you uncheck the box “Update NVRAM Entry”, then it won’t attempt to do the part that will fail. So it will appear to work. But you won’t have a fully booting system.
Normally, it will also install fallback booting in “/boot/efi/Boot”, but only if that directory is empty. If you have been using Windows with EFI booting, then that directory is unlikely to be empty. That’s why I suggest removing everything in that directory. (You can copy the files to somewhere else, so that you can move them back later).
When you next try to boot, it should use the fallback to complete your boot installation.
I have had a read of the following article (UEFI boot: how does that actually work, then? | AdamW on Linux and more) explaining UEFI and can’t seem to understand why I would need to remove the “/boot/efi/EFI/Boot” files. My understanding is this is a specific file UEFI will look for in a specific location on the drive, but my windows partition and tumbleweed partitions are on separate drives so will have separate locations and thus switching tumbleweed to UEFI should not effect the windows files.
Please let me know if I am missing something here or have misunderstood as I am still getting my head around it all.
It may depend on the BIOS. Once it has booted to EFI mode, you could always use Yast Boot Loader and then check that box (update NVRAM) to make sure everything is working.
Normally, each operating system has its own boot files somewhere in the EFI partition. For Windows, that’s in a Microsoft directory.
When booting, the UEFI firmware looks at the entries in NVRAM (non-volatile RAM) to decide what to boot. But if there is nothing suitable in NVRAM, then it looks at “/boot/efi/EFI/Boot” for a file named “bootx64.efi”. That’s a fallback location.
Some operating systems will automatically place a file there as as a fallback. But openSUSE doesn’t do that unless the directory is empty.
All of this complication is because you cannot create a suitable NVRAM entry unless you booted in UEFI mode. So when switching from legacy boot you cannot directly create that NVRAM entry. So we needed a way of getting you booted in UEFI mode without an NVRAM entry.