From 66608c7c0686514a9ef98b3b26aa18ac5f7390fd Mon Sep 17 00:00:00 2001 From: Tobias Powalowski Date: Wed, 19 May 2010 07:43:36 +0200 Subject: [PATCH] more raid list fixes --- usr/share/archboot/installer/setup | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/usr/share/archboot/installer/setup b/usr/share/archboot/installer/setup index 7967b4ea2..7e2149964 100755 --- a/usr/share/archboot/installer/setup +++ b/usr/share/archboot/installer/setup @@ -268,10 +268,23 @@ default_blockdevices() { # lists default linux partitionable raid devices partitionable_raid_devices() { for dev in $(ls $block 2>/dev/null | egrep '^md'); do - for i in $(ls $block/$dev | egrep ${dev}p); do + for i in $(ls $block/$dev 2>/dev/null | egrep ${dev}p); do if [ -d "$block/$dev/$i" ]; then echo "/dev/$dev" [ "$1" ] && echo $1 + break + fi + done + done +} + +# lists default linux partitionable raid devices +partitionable_raid_devices_partitions() { + for dev in $(ls $block 2>/dev/null | egrep '^md'); do + for i in $(ls $block/$dev 2>/dev/null | egrep ${dev}p); do + if [ -d "$block/$dev/$i" ]; then + echo "/dev/$i" + [ "$1" ] && echo $1 fi done done @@ -338,11 +351,13 @@ default_partition_check() { # list none partitionable raid md devices raid_devices() { - for devpath in $(ls -d /dev/md* 2>/dev/null | grep md[0-9]); do - # exlude md partitions which are part of lvm or luks - if ! [ "$(blkid -c=/dev/null $devpath | grep "TYPE=\"LVM2_member\"")" -o "$(blkid -c=/dev/null $devpath | grep "TYPE=\"crypto_LUKS\"")" ]; then - echo "$devpath" - [ "$1" ] && echo $1 + for dev in $(ls $block 2>/dev/null | egrep '^md'); do + if ! [ "$(ls $block/$dev 2>/dev/null | egrep ${dev}p)" ]; then + # exlude md partitions which are part of lvm or luks + if ! [ "$(blkid -c=/dev/null $devpath | grep "TYPE=\"LVM2_member\"")" -o "$(blkid -c=/dev/null $devpath | grep "TYPE=\"crypto_LUKS\"")" ]; then + echo "$devpath" + [ "$1" ] && echo $1 + fi fi done } @@ -386,6 +401,7 @@ findpartitions() { additional_blockdevices_partitions $1 dmraid_partitions $1 raid_devices $1 + partitionable_raid_devices_partitions $1 } # don't check on raid devices!