Hi! I’ve been using OpenSUSE Tumbleweed on my Dell Laptop via dual boot with Windows 11, which was there previously. Due to the hardware issues I had Dell replace the entire motherboard on the laptop and since then I can no longer boot into Linux. The system just boots into Windows like it did before I installed Linux as a second OS. The Dell service engineer mentioned that GRUB might have been broken but I’m not sure. How can I troubleshoot this issue? Thanks!
I’ll assume that you are using UEFI booting.
You may need to reinstall grub. For this you can boot your install media to the rescue system. Or you can download the iso for the live rescue system and use that.
Running from a rescue system, one way or the other, can you post the output from:
efibootmgr -v
Yes, I am using UEFI booting. Here is the output of the efibootmgr -v
: https://i.imgur.com/0kCuoe8.jpg Regarding the boot order, I did change that in the BIOS previously to start from Boot0000* UEFI Hard Drive
, but it crashed.
Using your install media, there should be an entry “Boot from hard drive” (or similar wording). Give that a try.
It probably won’t work, but it is worth trying.
If that fails, then boot the rescue system again, and provide the output from
fdisk -l
If possible, tell us which of those partition you use for openSUSE.
Thanks! I was actually able to find your older forum comment and with minor adaptation I could restore grub:
mount /dev/nvme0n1p8 /mnt
mount --bind /dev /mnt/dev
mount --bind /sys /mnt/sys
mount --bind /proc /mnt/proc
chroot /mnt
mount -a
grub2-install --target=x86_64-efi --efi-directory=/boot/efi --removable
Those arguments to grub2-install
seem to be crucial for it to work, but I’m not sure which of the three solved it. I followed this StackOverflow solution.
Using “–removable” put the boot information into the “/EFI/boot” directory of your EFI partition.
Now that your system is bootable, I recommend that you use Yast bootloader. When in Yast bootloader, change something. The easiest is to change the timeout by 1 second. Then Yast should reinstall grub in a more permanent way.
I have found the easiest way to “refresh” grub, is to boot from the Tumbleweed install, and one of the options is to boot from installed Linux system (on hardrive).
Once booted into your HDD Tumbleweed, just use Yast to refresh the bootloader,…
Seems to work fine, and is easy!
Tried that with current net install:
erlangen:~ # findmnt /media/openSUSE-Tumbleweed-NET-x86_64
TARGET SOURCE FSTYPE OPTIONS
/media/openSUSE-Tumbleweed-NET-x86_64 /dev/sdb2 iso9660 ro,nosuid,nodev,relatime,nojoliet,check=s,map=n,blocksize=2048,uid=1000,gid=100,dmode=555,fmode=444,iocharset=utf8
erlangen:~ # lsblk -f /dev/sdb
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
sdb iso9660 Joliet Extension openSUSE-Tumbleweed-NET-x86_64 2023-03-26-03-38-15-54
├─sdb1 vfat FAT16 openSUSE-Tumbleweed-NET-x86_64 8A5F-2D68
└─sdb2 iso9660 Joliet Extension openSUSE-Tumbleweed-NET-x86_64 2023-03-26-03-38-15-16 0 100% /media/openSUSE-Tumbleweed-NET-x86_64
erlangen:~ #
The procedure is indeed straight forward, fast and easy.
I have a similar problem and I don’t quite see what I should do to solve it.
In another thread, I described helping a senior citizen get a new laptop. He gave me his old pc with Windows 10 installed. I tried installing Tumbleweed for a dual boot, as I have often done before, but failed after many tries.
I narrowed the problem down to secure boot issues. Disabling secure boot allowed me to install a bootable Tumbleweed. However, I have to enter bios to get TW booted. The grub menu does not come up automatically, as I would expect. Among the boot option is both opensuse-secure boot and opensuse without the secure boot label. I use this second one to get TW to boot.
How do I get the grub menu to come up automatically? Do I want to restore secure boot? If so, how will it affect the current install?
Thanks for your help.
Thanks, I just did exactly that!
I actually attempted to do this as well, but it didn’t work for me for some reason. I’ll keep that in mind for the next time.
This is what I’ve done for Win 10 and 11. see screenshot
https://paste.opensuse.org/pastes/9b447d956013