Grub and RAID confusion

I’m running openSUSE 13.1 with my root file system on a 3-disk software RAID1 array (3 partitions, each on a different disk). Grub has been set up so that the system boots from the second disk (/dev/sdb) and the BIOS has been told to boot from this disk. This all works fine and has been running for some time.

I now need to replace the second disk. I have a replacement already partitioned, but it doesn’t have any grub2 boot code on it, so if I simply swap it I’d expect the system won’t boot. I’ve tried to change things so that I boot from the first disk instead, but can’t seem to make it work.

I’ve used Yast boot manager to set up the boot loader in the MBR of /dev/sda (the first disk, which was the only option it gave me). But when I switch the BIOS to boot from that disk, I get “Loading grub stage 1.5” and “Error 2” which seems to imply it’s not been set up correctly. Booting from the second disk still works OK.

So I’d appreciate any help to get this working. The first goal is to replace the second disk, but ideally, I’d like to be able to tell the BIOS to boot from any of the 3 disks (in case of failure). Currently I’m a bit confused about grub2 and the steps needed to install it properly. It mostly seems to work auto-magically, but when it doesn’t I’m not sure where to start and the extra RAID aspect adds to the confusion.

Thanks for any help you can offer.

As openSUSE uses the /dev/disk/by-id/ symlinks instead of /dev/sdXN directly, it could be that you still have the wrong pointers somewhere in your GRUB configuration.

I am not sure here, but it may be worth checking

I would think that you could do a complete backup of your second disk, then reinstall the backup image to your new disk.

You probably have Yast2-backup already installed and running “backup” through the Software Manager, it will show you additional tools that are available.

But - if Grub2 is installed to the MBR and the backup doesn’t capture that, you may have to use a bootable disk or usb flash, then chroot into your openSUSE installation and reinstall the bootloader after changing disks.

Also, I have used SuperGrub2 to gain access to installations that wouldn’t boot, which can then be repaired.