Unable to boot. No bootable disk found

Unfortunately I’m unable to boot my linux system anymore.
My small NUC is complaining that there is no bootable disk available. This happens after a BIOS upgrade.
Looking into the BIOS I changed the boot setting from UEFI to the old MBR.

I have booted now with “Tumbleweed Installer Stick -> more -> boot a Linux system” into my system (works fine) and played around with the yast-> bootloader.

My current configuration is:
GRUB2
write in master Boot Record
set activ flag in partions table

my disc looks like this:


parted -l
Model: CT500P1SSD8 (nvme)
Disk /dev/nvme0n1: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: pmbr_boot


Number  Start   End     Size    File system     Name  Flags
 1      1049kB  9437kB  8389kB                        boot, legacy_boot, esp
 2      9437kB  107GB   107GB   btrfs
 3      107GB   110GB   2147MB  linux-swap(v1)        swap
 4      110GB   500GB   391GB   xfs



Part 2 is my / partition
Part 4 my /home partition

no separate /boot partition .

To be honest, I don’t know what to do.For two days I have tried all possible combinations, but unfortunately without success.

Does anyone have any advice?

What did you use before the BIOS update?

I used MBR.
Just as left all defaults during Trumbleweed installation.

I’m not aware that I had changed anything there. Maybe the NUC first looked for UEFI and then for MBR.

I also did now a SMART test on my disk to exclude a disc defect: PASSED.

That would mean the update changed it from MBR to UEFI. Rather strange.

I asked because you said you changed from UEFI to MBR, but did not explain if that was because you thought it was earlier the case, or just a trial out of despair. And also because of the existence of nvme0n1p1 of which parted has not much to tell. Could it be an EFI partition? Maybe more information from

fdisk -l

and

lsblk -f

here is my fdisk -l


**Disk /dev/nvme0n1: 465.76 GiB, 500107862016 bytes, 976773168 sectors**
Disk model: CT500P1SSD8                              
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: FB7ADF4C-DBDA-4D1E-9595-0558581FF26D

**Device        ****    Start****      End****  Sectors****  Size****Type**
/dev/nvme0n1p1      2048     18431     16384     8M EFI System
/dev/nvme0n1p2     18432 209733631 209715200   100G Linux filesystem
/dev/nvme0n1p3 209733632 213927935   4194304     2G Linux swap
/dev/nvme0n1p4 213927936 976773134 762845199 363.8G Linux filesystem


and here my lsblk -f


lsblk -f
NAME        FSTYPE FSVER LABEL UUID                                 FSAVAIL FSUSE% MOUNTPOINTS
nvme0n1                                                                             
├─nvme0n1p1 vfat   FAT12       BFB3-0945                                            
├─nvme0n1p2 btrfs              71dde1c0-aebc-46f4-a7f2-b9c212bc133d   70.8G    27% /var/lib/docker/btrfs
│                                                                                  /var
│                                                                                  /usr/local
│                                                                                  /tmp
│                                                                                  /srv
│                                                                                  /root
│                                                                                  /opt
│                                                                                  /boot/grub2/x86_64-efi
│                                                                                  /boot/grub2/i386-pc
│                                                                                  /.snapshots
│                                                                                  /
├─nvme0n1p3 swap   1           17739779-67dc-4d70-850b-722194113de5                [SWAP]
└─nvme0n1p4 xfs                eeb54da8-9d62-46dc-890b-ab9734abca74   87.3G    76% /home


I played around with /dev/nvme0n1p1. Try to set a flag, make filesystem on it etc.

It is not clear whether your issues started after you did it or you changed from UEFI to MBR after your issues had started.

Are your sure your system supports legacy BIOS boot from NVMe? This requires support from BIOS or option ROM in NVMe. According to your partition table you had EFI boot. Why did you change boot mode?

Which shows it’s type is EFI partition. That would then point to UEFI booting being installed (where else would it come from?)

When you created a new file system on it, all it’s content is gone!

Probably re-creating a correct EFI file ssytem might help. I have no doubts there are ways to do this, but you have to wait for others because I have no idea.

I thought I didn’t have a UEFI system.
The flag was probably added by my playing around.

Anyway, I tried to install an EFI boot loader with Yast and got the message, no EFI partition found.
In my opinion, the first partition is also much too small for this.

I notice that the first partition is 8M. That’s typically the size used for a bios_boot (or bios_grub) partition. Perhaps change that back to bios_grub and reinstall grub2 to see if that helps.

Ok, I changed the type partition.


fdisk -l
**Disk /dev/nvme0n1: 465.76 GiB, 500107862016 bytes, 976773168 sectors**
Disk model: CT500P1SSD8                              
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: FB7ADF4C-DBDA-4D1E-9595-0558581FF26D

**Device        ****    Start****      End****  Sectors****  Size****Type**
/dev/nvme0n1p1      2048     18431     16384     8M BIOS boot
/dev/nvme0n1p2     18432 209733631 209715200   100G Linux filesystem
/dev/nvme0n1p3 209733632 213927935   4194304     2G Linux swap
/dev/nvme0n1p4 213927936 976773134 762845199 363.8G Linux filesystem


Changed the Bootloader configuration in yast.
Bootloader: Grub2
Write in Master-Boot-Record /dev/nvme0n1
Set Active-flag in partition
Generic Bootcode in MBR

It did NOT boot :frowning:

I don’t know what to do more…

Shortly before the reinstallation, I found the solution.

I had an EFI system. I wasn’t aware of. If something is running you don’t look at it.
So I formatted the 8Mb partition as an EFI partition with FAT and mounted it under /boot/efi. I had not done that before!
Then reinstalled grup2-efi and booted.

It works. I am pleased.
Thanks for your help!

Why this happend after a BIOS update? I don’t have a clue

Something in that BIOS update caused the problem.

I’m glad to hear that it is solved. However, 8mb is smallish for an EFI partition, so you may need to monitor it.

Yes 8mb is quite small, but this is still the default configuration.
BTW the usage is is only 316k


df -h
Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf
.....
/dev/nvme0n1p1  8,0M    316K  7,7M    4% /boot/efi
......



If you enable secure-boot support, the usage will jump by around 4M. So best not to enable that.