From: Harald Hoyer Date: Fri, 16 Apr 2010 14:44:24 +0000 (+0200) Subject: mdraid: try to start container childs manually with "mdadm -R" X-Git-Tag: 006~63 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=56f184310ad5281b4dbb5a9abba47ae9ba9e982e;p=thirdparty%2Fdracut.git mdraid: try to start container childs manually with "mdadm -R" --- diff --git a/modules.d/90mdraid/mdraid_start.sh b/modules.d/90mdraid/mdraid_start.sh index 1701b6cb9..866267160 100755 --- a/modules.d/90mdraid/mdraid_start.sh +++ b/modules.d/90mdraid/mdraid_start.sh @@ -5,6 +5,18 @@ info "Assembling MD RAID arrays" udevadm control --stop-exec-queue mdadm -IRs 2>&1 | vinfo + +# there could still be some leftover devices +# which have had a container added +for md in /dev/md[0-9]* /dev/md/*; do + [ -b "$md" ] || continue + local udevinfo="$(udevadm info --query=env --name=$md)" + strstr "$udevinfo" "MD_UUID=" && continue + strstr "$udevinfo" "MD_LEVEL=container" && continue + strstr "$udevinfo" "DEVTYPE=partition" && continue + mdadm -R "$md" 2>&1 | vinfo +done + ln -s /sbin/mdraid-cleanup /pre-pivot/30-mdraid-cleanup.sh 2>/dev/null ln -s /sbin/mdraid-cleanup /pre-pivot/31-mdraid-cleanup.sh 2>/dev/null udevadm control --start-exec-queue