From 50d9008d7fadb8b6b33787c97a3f4c4a53b1da70 Mon Sep 17 00:00:00 2001 From: Tobias Powalowski Date: Sat, 28 Mar 2009 17:17:15 +0100 Subject: [PATCH] 'fix redundancy detection in grub' --- usr/share/archboot/installer/setup | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/usr/share/archboot/installer/setup b/usr/share/archboot/installer/setup index 3c439d987..781925185 100755 --- a/usr/share/archboot/installer/setup +++ b/usr/share/archboot/installer/setup @@ -1569,14 +1569,14 @@ dogrub() { if [ "$PART_ROOT" != "" -a "$S_GRUB" != "1" ]; then # check if raid device is used if [ "$(echo $PART_ROOT | grep md)" ]; then - if ! [ "$(mdadm --detail $PART_ROOT | grep Level | sed -e 's#.*:\ ##g')" = "raid0" -o "$(mdadm --detail $PART_ROOT | grep Level | sed -e 's#.*:\ ##g')" = "linear" ]; then - # redundant devices + if [ "$(mdadm --detail $PART_ROOT | grep Level | sed -e 's#.*:\ ##g')" = "raid1" ]; then + # get redundant devices for i in $(mdadm --detail $PART_ROOT | grep "\ /dev/" | sed -e 's#.* /#/#g'); do _grubdev="$_grubdev $(mapdev $i)" done redundant="1" else - # in raid0,linear devices are not redundant, only one device needed! + # none raid1 devices are not redundant, only one device needed! _grubdev=$(mapdev $(mdadm --detail $PART_ROOT | grep "\ /dev/" -m 1| sed -e 's#.* /#/#g')) redundant="" fi @@ -1588,14 +1588,14 @@ dogrub() { bootdev=$(mount | grep $DESTDIR/boot | cut -d' ' -f 1) # check if raid device is used on /boot partition if [ "$(echo $bootdev | grep md)" ]; then - if ! [ "$(mdadm --detail $bootdev | grep Level | sed -e 's#.*:\ ##g')" = "raid0" -o "$(mdadm --detail $bootdev | grep Level | sed -e 's#.*:\ ##g')" = "linear" ]; then - # redundant devices + if [ "$(mdadm --detail $bootdev | grep Level | sed -e 's#.*:\ ##g')" = "raid1" ]; then + # get redundant devices for i in $(mdadm --detail $bootdev | grep "\ /dev/" | sed -e 's#.* /#/#g'); do _bootdev="$_bootdev $i" done redundant="1" else - # in raid0,linear devices are not redundant, only one device needed! + # none raid1 devices are not redundant, only one device needed! _bootdev=$(mdadm --detail $bootdev | grep "\ /dev/" -m 1| sed -e 's#.* /#/#g') redundant="" fi