grub cant find partitions

Last week I shut down my computer to install a new sound card and when I started it up the power supply popped and smoked.

Luckily, it is under warranty and got it today. Hooked it up and everything seems to start up properly. Except I get this message in grub: error no such partition. I get it twice because I dual boot.

So I followed the instructions on opensuse.com help pages for grub rescue and the rescue on the 15.1 installer. I got no errors going through the steps but it still wont boot.

I dont have anything I can’t lose on the disk with the linux partitions - not so with windows- so I just reinstalled. Still won’t boot and got the same error.

I reformatted and installed over the old partitions. It did report that the windows partition is active so I did not mount that. The grub options were left alone during install.

Is there something else I could try? Thanks

We don’t actually know what you already tried. You gave too little information about that.

I will assume that you can boot install media and get to the rescue system. From there, can you provide the output from:

fdisk -l

That will give us a starting point.

I went through grub rescue and the rescue on the install disk with no errors and I reinstalled linux but none of them solved the issue .

I cant upload a photo of the output and is too much to type in my phone. There are no error messages.

Disk /dev/loop0: 70.5 MB

Disk /dev/loop1: 13.8 MB

Disk /dev/loop2: 49.4 MB

Disk /dev/loop3 45.5 MB

Disk /dev/loop4 4.1 MB

Disk /dev/sda 1.8 TB
/dev/sda1 boot. 500 m Ntfs
/dev/sda2. 1.8t. Ntfs
/dev/sda3. 476m ntfs

Disk /dev/sdb 931.5gb
/dev/sdb1 5g swap
/dev/sdb2 boot 60g linux
/dev/sdb3 100g linux
/dev/sdb4 766.5g ntfs

The information for the “/dev/loop” entries does not matter. That’s internal to the rescue system that you are using.

The information for “/dev/sda” and “/dev/sdb” is what I wanted to see. But I did not know whether you had standard drives or “nvme” drives, and I did not know how many. At least we now know that.

You can get the information for those two disks with:


fdisk -l /dev/sda
fdisk -l /dev/sdb

However, I’ll go with what you provided. But the output for those should also have either:


Disklabel type: dos
or
Disklabel type: gpt

It would be helpful if you could provide that information for those two disks.

I’m just guessing now. It looks as if “/dev/sdb2” is your linux root partition.

If you are booted into the rescue system, you should be able to do:


mount /dev/sdb2 /mnt
cat /mnt/etc/fstab
cat /mnt/etc/default/grub_installdevice

I am mostly looking for the “fstab” entry for the root file system (for “/”), so you can skip the others if that is too much to type. There is probably only one line of output for the last of those commands.

Both disks are disk label type dos.

/dev/sdb2 is root.

Cat /mnt/etc/fstab:
UUID-98269331-9ef6-489b-8f7e-c80cf0eff34b / btrfs defaults 0 0

Cat /mnt/etc/default/grub_installdevice
/dev/disk/by-id/ata-ST1000DX002-2DV162_Z4YFD3D5

That is the second disk sdb

Okay. That all looks fine.

So why cannot it find partitions?

Normally grub looks for partitions by UUID.

Re-reading your original post, I’m not clear on whether you are able to boot into openSUSE.

You might just be saying that you can boot, but you get a strange error message along the way. Or you might be saying that you cannot boot.

If you are able to boot into openSUSE, then try running (as root)

grub2-mkconfig -o /boot/grub2/grub.cfg

and see if that fixes the problem.

It is best to not have any USB drives plugged in at the time you run that command.

I thought it was clear I couldn’t boot because I said I get ‘error no such partition’ at the boot screen. If I could get boot into opensuse I wouldn’t have a problem. I could back up data in windows and wipe and start over.

The confusing part is why reinstalling does not change anything. Maybe a repair shop visit is in order?

I think at this point the remaining solutions are to see if I can get windows on a usb drive and see if it can repair itself enough to at least boot properly or get another hard drive and remove the others and install on the new drive?

Maybe your install is set to boot from the second drive, but the BIOS is booting from the first drive.

That is a good point. I am out right so I will check later. I think the bios only shows the sda disk in the boot order but I could be wrong. Thank you for your help and patience it is appreciated

I dug around the bios and switched the HD boot preference and it works! Craziness thank you very much

I’m glad to hear that it is now working.