grub2 fails to boot from hard disk after fresh install

Hello,

I am new to opensuse, but have used Ubuntu quite a bit and in the distant past CentOS. I installed opensuse leap 15 and then tried to boot from it. Grub2 failed with the messages:

Grub loading …
Welcome to GRUB!
error:not a Btrfs filesystem
error:unknown filesystem
Entering rescue mode
grub rescue>

I know the installation is good, since I can boot to it from the installation media (i.e., boot the installation media and then select “boot from hard disk”). I have searched both this forum and googled in general the error message “not a Btrfs filesystem” coming from grub2 with no success (it appears in other contexts). I also googled “unknown filesystem” associated with booting and found some help, but nothing that worked.

If someone could provide an outline of the steps I need to take to correct this, I would be grateful. Note: I have read and tried out some of the fixes suggested in https://doc.opensuse.org/documentation/leap/startup/html/book.opensuse.startup/cha.trouble.html, but have not successfully found the problem.

Thanks.

Share output from https://github.com/arvidjaar/bootinfoscript and someone can probably suggest what you need to do. I’m just guessing that the BIOS is set to boot from a different mode than that installed, BIOS set to legacy & installation as UEFI, or vice versa, and the grub> prompt/message is a leftover from your old installation. Maybe a complete disk wipe followed by a new installation would be an easier solution.

I have 3 laptops with dual-boot Win 10 and Leap 15. The first time or 2 after clean install of Leap 15, all is well, but after that, any attempt to use SUSE is met with “emergency mode.” Initially after rebooting thru this 3-5 times, I could finally boot Leap. Now I cannot, on any of my systems. I have been using SUSE since 1995. My laptops have intel chips T6570, 5500 and 6700.
I do believe the recent updates of Win 10 have been specifically designed to cause trouble with Grub 2, but maybe that is my paranoia showing.

I have tried to find where to choose between legacy and UEFI boot in my system’s BIOS (Lenovo H415) with no luck. I disabled quick boot, but still couldn’t find a BIOS menu item to choose between the two.

I ran bootinfoscrip, but couldn’t find a way to attach the file to this message. I then tried to paste it inline, but it was too long and the system refused to send it. So, how do I get the informational to those who can use it?

You can use the cmdline utility susepaste or a web browser @ http://susepaste.org/ and either way put the URL provided in a reply here.

OK. I used susepaste and the URL is:

http://susepaste.org/34354701

NAICT, you’ve installed openSUSE in UEFI mode on an MBR HD and you’re trying to boot in MBR mode. How old is your PC? Can it even boot in UEFI mode? If the BIOS indeed does not have a switch for doing so, it probably can’t boot UEFI. H415 seems to be around 8 years old, which should be UEFI capable, but possibly it isn’t. Easiest fix might be to wipe the disk and do a fresh install in BIOS/legacy mode. The install media can do either type of installation.

Thanks for looking into this. I believe the Lenovo H415 supports UEFI boot, since it ran Windows 10. Nevertheless, I think you are right. I should just reinstall opensuse in BIOS/legacy mode. Just so I don’t miss it during the installation dialog, about when is that choice presented?

Dan

If it came with Windows 7 that was later upgraded to Win 10, then being in BIOS mode makes sense. If it came with Win 10, then it certainly should support UEFI, in which case I’d take a long hard look in the BIOS for a BIOS/UEFI switch before doing another installation. After all, you know you have a working 15.0 installation from using install media to boot it.

I have searched through the BIOS menu at least 10 times and could find no way to choose between legacy and efi. However, when I boot from the hard disk, there is a /sys/firmware/efi directory. I used less to look at some of the files in that directory and they were populated. Is it possible the system only supports efi?

I have no idea. It would not surprise me but for the behavior you are experiencing.

You have grub2 installed in MBR of your disk; this installation expects that 5th partition is openSUSE btrfs installation. As it is currently, 5th partition is ESP (VFAT). Which explains errors you get.

So it appears your system boots in legacy BIOS mode and picks up loader installed in MBR. Whether or not it is intentional I cannot say. You apparently have openSUSE loader files on ESP as well. I would add that using logical partition for ESP is not custom as well. I have no idea how you end up with such strange configuration.

So your first step is to decide, whether you want to use legacy BIOS or EFI. And make sure you know how to setup your hardware to use either mode (or how to force mode for specific boot).

As legacy mode is not usable with current bootloader installation, you could try forcing EFI.

I reinstalled opensuse leap 15 using grub2, rather than grub2/efi and things work fine now. I guess the system doesn’t support efi; only legacy bios.

Thanks for your help in getting my system up and going.