CentOS 7 – Have 2 Disks, Each With A Biosboot Partition, Can Only Boot Off One Of Them

Home » CentOS » CentOS 7 – Have 2 Disks, Each With A Biosboot Partition, Can Only Boot Off One Of Them
CentOS 1 Comment

Hi all,

I used a kickstart script to setup a new machine of mine with RAID 1
(I couldn’t get anaconda to create matching partition schemes). So I’ve now got /dev/sdg1 and /dev/sdh1 as ‘bios_grub’ (/dev/sd{a-f} are a separate array).

0 root@an-nas02:~# parted /dev/sdg print free Model: ATA ST3000NC000 (scsi)
Disk /dev/sdg: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt Disk Flags: pmbr_boot

Number Start End Size File system Name Flags
17.4kB 1049kB 1031kB Free Space
1 1049kB 3146kB 2097kB bios_grub
2 3146kB 3001GB 3001GB raid
3001GB 3001GB 466kB Free Space

0 root@an-nas02:~# parted /dev/sdh print free Model: ATA ST3000NC000 (scsi)
Disk /dev/sdh: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt Disk Flags: pmbr_boot

Number Start End Size File system Name Flags
17.4kB 1049kB 1031kB Free Space
1 1049kB 3146kB 2097kB bios_grub
2 3146kB 3001GB 3001GB raid
3001GB 3001GB 466kB Free Space

I can only boot off of /dev/sdh, so I tried to run ‘grub2-install’
against /dev/sdg and it failed with this error:

*** Error in `grub2-install’: double free or corruption (fasttop):
0x00000000010a83b0 ***

(full error: http://fpaste.org/139382/25324161/)

It seems like it’s blowing up on grub2-probe, as I can generate the same error. I tried specifying the device:

0 root@an-nas02:~# df -hP |grep boot
/dev/mapper/an–nas02_vg0-lv_boot 506M 133M 373M 27% /boot

0 root@an-nas02:~# lvdisplay /dev/an-nas02_vg0/lv_boot |grep VG
VG Name an-nas02_vg0

0 root@an-nas02:~# pvdisplay /dev/md0 | grep -e “VG Name” -e “PV Name”
PV Name /dev/md0
VG Name an-nas02_vg0

0 root@an-nas02:~# cat /proc/mdstat |grep md0
md0 : active raid1 sdg2[1] sdh2[0]

0 root@an-nas02:~# ls -lah /dev/mapper/an–nas02_vg0-lv_boot lrwxrwxrwx. 1 root root 7 Oct 5 18:45 /dev/mapper/an–nas02_vg0-lv_boot
-> ../dm-2

0 root@an-nas02:~# ls -lah /dev/dm-2
brw-rw—-. 1 root disk 253, 2 Oct 5 18:45 /dev/dm-2

0 root@an-nas02:~# grub2-probe -d /dev/dm-2
*** Error in `grub2-probe’: double free or corruption (fasttop):
0x0000000001e9cfd0 ***
======= Backtrace: ========/lib64/libc.so.6(+0x7d1ad)[0x7f9c702da1ad]

Full error: http://fpaste.org/139387/41253399/

So I am wondering how I can make /dev/sdg bootable? A RAID 1 array is of limited use if I can only boot off of one of the disks. :)

Thanks!

One thought on - CentOS 7 – Have 2 Disks, Each With A Biosboot Partition, Can Only Boot Off One Of Them

  • I got the answer thanks to ‘randomuser’ on freenode’s #CentOS;

    The problem seems to be that it couldn’t handle the fact that /boot was an LV. By telling grub not to probe for an FS, it was able to finish successfully. I tested booting off both disks successfully:

    0 root@an-nas02:~# grub2-install –grub-probe=/dev/null /dev/sda Installing for i386-pc platform. Installation finished. No error reported.

    Note that when I ran that, I had removed the other disks to prevent damage to the array I cared about, hence the s/sdg/sda/ above.