The installation procedure stores the name of RAID volume and partition in an initscript. When the system boots, dmraid enables the RAID partition (that are named implicitly in the init script. This action functions until the volume and partition names are changed. In these cases, the system may not boot, and the user is given an option to reboot system and start the rebuild procedure in OROM.
OROM changes the name of RAID volume (as seen by dmraid) and dmraid cannot recognize the array identified by previous name stored in initscript. The system no longer boots from RAID partition, since it is not enabled by dmraid. In case of RAID 1 (mirror), the system may be booted from disk that is part of RAID volume. However, dmraid does not allow to active or rebuild the volume which component in mounted.
To work around this issue, do not rebuild the RAID array in OROM. Start the rebuild procedure by dmraid in the operating system, which performs all the steps of rebuilding. dmraid does not change the RAID volume name, therefore the system can be booted from RAID array without the need of init script modification.
To modify init script after OROM has started rebuild:
Start the system in rescue mode from the installation disk, skip finding and mounting previous installations.
At the command line, find and enable the raid volume that is to be booted from (the RAID volume and partitions will be activated)
dmraid -ay isw_effjffhbi_Volume0
Mount the root partition:
mkdir /tmp/raid
mount /dev/mapper/isw_effjffhbi_Volume0p1 /tmp/raid
Decompress the boot image:
mkdir /tmp/raid/tmp/image
cd /tmp/raid/tmp/image
gzip -cd /tmp/raid/boot/inird-2.6.18-155.el5.img | cpio -imd –quiet
Change the names of the RAID volumes in the initscript to use the new names of RAID:
dmraid –ay –I –p –rm_partition “/dev/mapper/isw_effjffhbi_Volume0”
kpartx –a –p p “/dev/mapper/isw_effjffhbi_Volume0”
mkrtootdev –t ext3 –o defaults,ro /dev/mapper/isw_effjffhbi_Volume0p1
compress and copy initrd image with the modified init script to the boot directory
cd /tmp/raid/tmp/image
find . –print | cpio –c –o | gzip -9 > /tmp/raid/boot/inird-2.6.18-155.el5.img
unmount the raid volume and reboot the system:
umount /dev/mapper/isw_effjffhbi_Volume0p1
dmraid -an