Commit e3c47461 authored by Vitaly Lipatov's avatar Vitaly Lipatov

raid_restore: fixes for raid 0.9 and mdadmn

parent 50be691b
......@@ -2,7 +2,8 @@
get_array_uuid()
{
local dev="$1"
mdadm -E $dev | grep "Array UUID : " | sed -e "s|.*Array UUID : ||"
# "Array UUID for 1.2 and UUID for 0.9"
mdadm -E $dev | grep " UUID : " | sed -e "s|.* UUID : ||"
}
get_md_by_uuid()
......@@ -53,7 +54,12 @@ DEVS="/dev/sd*"
for dev in $DEVS ; do
ARRAYUUID=$(get_array_uuid $dev)
[ -n "$ARRAYUUID" ] && MDDEV=$(get_md_by_uuid $ARRAYUUID) || MDDEV=''
if [ -n "$ARRAYUUID" ] ; then
MDDEV=$(get_md_by_uuid $ARRAYUUID) || MDDEV=''
else
echo "can't retrieve array UUID for $dev. Skipping"
continue
fi
STATUS="$(get_dm_status $MDDEV)"
echo "$dev - $ARRAYUUID - $MDDEV, status: $STATUS"
[ -n "$ARRAYUUID" ] && [ -z "$MDDEV" ] && echo "!!!! can't detect md for $dev"
......@@ -63,7 +69,7 @@ for dev in $DEVS ; do
echo "$STATUS" | grep -q "recovering" && echo "Skip $MDDEV, already recovering ..." && continue
echo "Restore degrated $MDDEV ...."
# TODO: --readwrite for SSD
mdadm $MDDEV --re-add $dev
mdadm $MDDEV --add $dev
fi
done
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment