unable to boot UEFI leap 15.3 after reinstallation of leap 15.3

I have read lots of post for 15.3 and tumbleweed, but Im unsure as to how to fix my system, so please forgive yet another post on something that has already been asked.
I was able to install leap 15.3 on my drive, after install I was able to do reboots and had no problems booting into it, but after reinstalling 15.3 (dont ask why) on the same drive I’m now unable to get my BIOS to recognize the UEFI partitions, on both occasions of install I did check the “update NVRAM” box on 15.3. As a test I erased the drive and installed leap 15.2 in UEFI and had no problems booting into it, erased drive again and tried for a third time 15.3, but nothing, the only way to get into 15.3 is to use the DVD and select “boot from hard drive” from there I was able to run blkid and efibootmgr

efibootmgr -v
BootCurrent: 0001
BootOrder: 0001
Boot0001* UEFI: HL-DT-ST BD-RE BT30N

For some reason Boot0001 points to my CDROM

blkid consists of 4 paritions
/dev/nvme1p1: UID"HAS VALUE" Block_Size=“4096” Type=“VFAT+ PARTUUID=“HAS VALUE”
/dev/nvme1p2: UID"HAS VALUE” Type=“LVM2_member” PARTUUID=“HAS VALUE”
/dev/mapper/system-root
/dev/mapper/system-swap

Sorry if blkid is not complete but the computer with issue has no internet access yet

You have not provided much information.

I will make a wild guess. This could be due to the pmbr_boot flag. Some BIOS will not use UEFI on a disk where that flag is set.

You can do a google search for “pmbr_boot” which should give some useful information. It might be sufficient to go into Yast Boot Loader, and change something (I usually change the timeout by 1 second). Make sure that it is using “grub2 for EFI”. And make sure that the “Protective MBR flag” is set to “remove”. When you save the changes, it should reinstall booting, and clear that flag.

What other info do you need?

Following UEFI fails to detect boot disk | Support | SUSE for pmbr in my case it was set to off, if I set to on then I cant boot into OS through DVD, set flag back to off. Using the DVD to get into OS I verified my timeout is set to default 8 sec, was set to grub 2 for EFI, set Protective flag to remove, did a efibootmgr -v and found a new Boot0000* which pointed to “opensuse” deleted Boot0001* which points to DVD, reboot system and still cant get in

What I dont understand is why I was able to boot into 15.3 after a clean install from 15.2, but after reinstalling 15.3 on same drive I cant? Never did any updates and haven’t changed any setting in BIOS so whats different

I don’t know the answer to that.

One change is with “shim”. The “shim” for Leap 15.2 used the openSUSE certificate, while the “shim” for Leap 15.3 uses the SUSE certificate. Possibly your BIOS (UEFI firmware) is remembering too much.

We have seen reports of cases where the BIOS does not recognize an nvme device, so the EFI partition cannot be on such a device. But you claim this worked with Leap 15.2, so that should not be the issue.

Does your BIOS have an option to reset to factory defaults? Maybe that would clear out the problem – or maybe not.

I have tried already resetting my bios, even shorted pins and removed battery and it didn’t make any difference, BIOS still doesn’t see any partitions for 15.3.

And yes, I have been using this hard drive that now has 15.3 with 15.2 for over a year, 15.2 was set to UEFI with SB.

Do you think it might be the due to the new “update NVR” box in the installation process on 15.3? that box is not on 15.2

No, I don’t think so. If you leave that box checked (which is the default), the result should be the same as with Leap 15.2.

What computer is this? I’m thinking it has a poor implementation of UEFI.

I do not see any evidence of it so far. As OP said

which explains why no boot entries were present originally. And after rerunning YaST bootloader module

So at least this part worked. But we have only vague

still cant get in

so no conclusion can be made. What “cant get in” means?

We need full description of what happens after power on, what appears on screen, what was entered and what errors are shown and when.

On my machines I ran several times into a similar problem with efi boots being deleted. I always succeeded by selecting “Load Optimized Defaults”. Upon leaving EFI and booting the missing boots were restored.

[quote="“arvidjaar,post:8,topic:147536”]
And after rerunning YaST bootloader module

So at least this part worked.[/QUOTE]
This shows output after running Yast bootloader. But is that entry still there after reboot? We don’t know that – we only know that it doesn’t work on reboot.

@karlmistelberger doing a “load optimized defaults” makes no difference, the UEFI partitions never show up

@arvidjaar what happens after doing a reinstall of leap 15.3 is that my computer will boot into the DVD, if I remove the DVD then it boots into the BIOS and no boot entries are shown on menu. If I launch rescue mode I can confirm the installation DVD did create 3 partitions as specified

@nrickert you are correct that after a reboot any efibootmgr made are deleted after a reboot. What I did was boot into rescue mode, clear all entries from NVRAM with efibootmgr and then followed your intrusions from https://forums.opensuse.org/showthread.php/534275-How-to-reinstall-grub2-efi-bootloader post#6 to rebuilt my efibootmgr, doing so created 2 new entries, one named opensuse and the other opensuse-secureboot, after a reboot those 2 entries get deleted.

Did you turn off CSM after loading defaults?

Yet another method to create a working boot loader: Grub – EFI – Btrfs | Karl Mistelberger Boot into a matching live or rescue system and proceed accordingly. When booted into Leap run Boot Info Script and post accordingly: http://mistelberger.net/bootinfoscript.out

Output of efivar may help too:

erlangen:~ # efivar --list
1b838190-4625-4ead-abc9-cd5e6af18fe0-HiiDB
2781600e-9df9-4ef8-a5a4-66501ae55c41-ASR_TIMERSMI
8be4df61-93ca-11d2-aa0d-00e098032b8c-BootCurrent
8be4df61-93ca-11d2-aa0d-00e098032b8c-PlatformLangCodes
ec87d643-eba4-4bb5-a1e5-3f3e36b20da9-NBGopPlatformData
8be4df61-93ca-11d2-aa0d-00e098032b8c-ErrOutDev
8be4df61-93ca-11d2-aa0d-00e098032b8c-BootOptionSupport
8be4df61-93ca-11d2-aa0d-00e098032b8c-ConInDev
8be4df61-93ca-11d2-aa0d-00e098032b8c-ConOutDev
79941ecd-ed36-49d0-8124-e4c31ac75cd4-AmdAcpiVar
8be4df61-93ca-11d2-aa0d-00e098032b8c-OsIndicationsSupported
01368881-c4ad-4b1d-b631-d57a8ec8db6b-OA3MSDMvariable
ec87d643-eba4-4bb5-a1e5-3f3e36b20da9-EzConfigData
01368881-c4ad-4b1d-b631-d57a8ec8db6b-FPDT_Volatile
8be4df61-93ca-11d2-aa0d-00e098032b8c-PKDefault
8be4df61-93ca-11d2-aa0d-00e098032b8c-KEKDefault
8be4df61-93ca-11d2-aa0d-00e098032b8c-dbDefault
8be4df61-93ca-11d2-aa0d-00e098032b8c-dbxDefault
ec87d643-eba4-4bb5-a1e5-3f3e36b20da9-aDefaultSetupConfig
ec87d643-eba4-4bb5-a1e5-3f3e36b20da9-GoodNightLed
4bafc2b4-02dc-4104-b236-d6f1b98d9e84-S3SS
8be4df61-93ca-11d2-aa0d-00e098032b8c-VendorKeys
8be4df61-93ca-11d2-aa0d-00e098032b8c-SecureBoot
8be4df61-93ca-11d2-aa0d-00e098032b8c-SetupMode
8be4df61-93ca-11d2-aa0d-00e098032b8c-SignatureSupport
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot0001
8be4df61-93ca-11d2-aa0d-00e098032b8c-BootOrder
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot0005
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot000C
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot0009
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot0008
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot0007
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot0006
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot0004
8be4df61-93ca-11d2-aa0d-00e098032b8c-OsIndications
73dad563-8f27-42af-918f-8651eb0a93ef-Ep
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot0000
eaec226f-c9a3-477a-a826-ddc716cdc0e3-UnlockIDCopy
77fa9abd-0359-4d32-bd60-28f4e78f784b-CurrentPolicy
81c76078-bfde-4368-9790-570914c01a65-SetUpdateCountVar
8be4df61-93ca-11d2-aa0d-00e098032b8c-Timeout
8be4df61-93ca-11d2-aa0d-00e098032b8c-PlatformLang
ec87d643-eba4-4bb5-a1e5-3f3e36b20da9-ASR_USER_DEF_VER
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot0002
45cf35f6-0d6e-4d04-856a-0370a5b16f53-DefaultBootOrder
8be4df61-93ca-11d2-aa0d-00e098032b8c-ErrOut
8be4df61-93ca-11d2-aa0d-00e098032b8c-ConIn
8be4df61-93ca-11d2-aa0d-00e098032b8c-ConOut
eda41d22-7729-5b91-b3ee-ba619921cefa-IntUcode
ec87d643-eba4-4bb5-a1e5-3f3e36b20da9-M2Setup
8be4df61-93ca-11d2-aa0d-00e098032b8c-LoadSetupDefault
ec87d643-eba4-4bb5-a1e5-3f3e36b20da9-CaseOpenStatus
01368881-c4ad-4b1d-b631-d57a8ec8db6b-MonotonicCounter
4b3082a3-80c6-4d7e-9cd0-583917265df1-WriteOnceStatus
8f132913-6907-4192-a227-6cbcd7a50e6c-StageChk
4b3082a3-80c6-4d7e-9cd0-583917265df1-DmiVar0200020700
4b3082a3-80c6-4d7e-9cd0-583917265df1-DmiArray
erlangen:~ # 

My main desktop does something like that. It deletes all but one entry. Or, at least, that was the original behavior.

So if I managed to boot openSUSE, it deleted the Windows entry. I could still boot Windows from the grub menu. But if I booted Windows, then Windows would reinstall its entry the the BIOS would delete the openSUSE entry on reboot.

By luck, I installed openSUSE on a second disk, with a second EFI partition. And now the BIOS allows me to keep 2 entries (probably one per EFI partition).

It looks as if you might need to keep that installer handy for booting.

@nrickert but why is this behavior not the same for 15.2 therefore not needing the DVD to boot into system.

As a test I installed 15.2 and I noticed that blkid reports an extra partition (might not be partition) I also noticed that the first partition is different than 15.3, below is what 15.2 shows for first partition

/dev/nvme0n1p1: SEC_TYPE=“msdos” UUID=“has uuid value” TYPE=“vfat” PARTUUID=“has uuid value”
on 15.3 this partition shows as
/dev/nvme0n1p1: UUID=“has uuid value” BLOCK_SIZE=“4096” TYPE=“vfat” PARTUUID=“has uuid value” → how come 15.3 doesnt have the SEC_TYPE=“msdos”, also how come this partition shows a BLOCK_SIZE

15.2 for partition 2 shows
/dev/nvme0n1p2: UUID=“has uuid value” TYPE=“ext4” PARTUUID=“has uuid value”
15.3 for partition 2 shows
/dev/nvme0n1p2: UUID=“has uuid value” BLOCK_SIZE=“4096” TYPE=“ext4” PARTUUID=“has uuid value” → how come this partition shows a BLOCK_SIZE

15.2 and 15.3 are the same for partition 3
15.2 is
/dev/nvme0n1p3: UUID=“has uuid value” TYPE=“swap” PARTUUID=“has uuid value”
15.3 is
/dev/nvme0n1p3: UUID=“has uuid value” TYPE=“ext4” PARTUUID=“has uuid value”

15.2 for partition 4 shows, I dont know if this is a partition so please correct me if I’m wrong
/dev/nvme0n1: PTUUID=“has uuid value” PTTYPE=“gpt”
15.3 doesnt have /dev/nvme0n1

fdisk -l
Disk model : same between 15.2 and 15.3
Units: same between 15.2 and 15.3 which is sectors 1 * 4096 = 4096
Sector size: same between 15.2 and 15.3 which is 4096 / 4096
I/O size is same between 15.2 and 15.3 which is 4096 / 4096
Disklabel type: same between 15.2 and 15.3 which is set to gpt

Devices
/dev/nvme0n1p1 the Start is the same for both, but the End is different due to the size on 15.2 is 500M vs 512M on 15.3, the type is EFI System for both
dev/nvme0n1p2 size is the same and the type is the same which is Linux filesystem
dev/nvme0n1p3 same swpa size

I also noticed that the BOOT_IMAGE is very differennt between 15.2 and 15.3, if I do cat /proc/cmdline

15.2 shows
BOOT_IMAGE=/boot/vmlinuz-5.3.18-lp152.87-default root=UUID=“has ROOT UUID” resume=/dev/disk/by-id/nvme-“list name and numbers”-part3 quiet
15.3
BOOT_IMAGE=/boot/x86_64/loader/linux splash=silent rescue=1

How can I delete on 15.3 nvme0n1p1 and redo this partition? how can I get 15.3 to add the /dev/nvme0n1: PTUUID=“has uuid value” PTTYPE=“gpt” that I see on 15.2? can I edit my BOOT_IMAGE? how can i do this?

The difference here is that with 15.2, you are booted into Leap 15.2. But your 15.3 information shows that you are just using rescue mode with the install media.

It’s hard to answer the others, partly because we do not have enough information to know what is going on.

yes you are right that the boot_image changes if I boot into 15.3 with the DVD.

what info do you need to know?

I would like to see the direct output of


fdisk -l
parted -l

where you copy the output to save in a file, rather than the hand copying that you are doing.

I recognize that you might be in circumstances where that is difficult.

Try:

fdisk -l | susepaste -e 10080
parted -l | susepaste -e 10080

That only works with Internet access. I seem to recall that he does not have access from the problem computer.

The other alternative is to output to a file, then copy that file to a USB drive (or similar) so that it can then be taken to a computer that does have Internet access.

To OP:

  1. Update BIOS.
  2. Provide info about problem PC - model, motherboard version, BIOS version, etc. And disk partition with proper Code # tags.
    We don’t want to guess.