r65 - mdadm/trunk/debian/initramfs

madduck at users.alioth.debian.org madduck at users.alioth.debian.org
Wed Aug 2 17:13:35 UTC 2006


Author: madduck
Date: 2006-08-02 17:13:34 +0000 (Wed, 02 Aug 2006)
New Revision: 65

Modified:
   mdadm/trunk/debian/initramfs/hook
   mdadm/trunk/debian/initramfs/script.local-top
Log:
moved initramfs config file from conf/mdadm.conf to conf/raid.conf
changed representation of RAID_DEVS, s/:/=/
corrected handling of raid4 (by raid5)
proper loading of raid456 instead of raid[456] if present


Modified: mdadm/trunk/debian/initramfs/hook
===================================================================
--- mdadm/trunk/debian/initramfs/hook	2006-08-02 17:05:22 UTC (rev 64)
+++ mdadm/trunk/debian/initramfs/hook	2006-08-02 17:13:34 UTC (rev 65)
@@ -48,7 +48,7 @@
     | while read a dev level num uuid; do
 
       if [ "$INITRDSTART" = all ] || expr "$INITRDSTART" : ".*${dev}.*" >/dev/null; then
-          DEVS="$DEVS ${dev}:${uuid#UUID=}"
+          DEVS="$DEVS ${dev}=${uuid#UUID=}"
           LEVELS="$LEVELS ${level#level=}"
       fi
 
@@ -66,13 +66,19 @@
 
 if [ -n "$DEVS" ]; then
 
-  touch $DESTDIR/conf/mdadm.conf
-  echo "RAID_DEVS='${DEVS## }'" >> $DESTDIR/conf/mdadm.conf
+  echo "RAID_DEVS='${DEVS## }'" > $DESTDIR/conf/raid.conf
+  echo "RAID_LEVELS='${LEVELS## }'" >> $DESTDIR/conf/raid.conf
 
-  # 1:1 mapping between level names and modules
-  MODULES="$(uniquify $LEVELS | tr '\n' ' ')"
-  echo "RAID_MODULES='$MODULES'" >> $DESTDIR/conf/mdadm.conf
+  # raid4 is handled by raid5
+  MODULES="$(echo $LEVELS | sed -e 's,raid4,raid5,g')"
 
+  # if raid456 module is present, use it for raid[456]
+  modprobe --set-version="$version" --show-depends raid456 >/dev/null 2>&1 \
+    && MODULES="$(echo $MODULES | sed -e 's,raid[456],raid456,g')"
+
+  MODULES="$(uniquify $MODULES | tr '\n' ' ')"
+  echo "RAID_MODULES='${MODULES%% }'" >> $DESTDIR/conf/raid.conf
+
   copy_exec $MDADM /sbin
 
   # copy all modules into the initramfs, just for safety.
@@ -89,7 +95,7 @@
   if [ "$DEVS" = all ]; then
     DEVNAMES="all RAID arrays"
   else
-    DEVNAMES="$(for i in $DEVS; do echo -n "${i%%:*},"; done)"
+    DEVNAMES="$(for i in $DEVS; do echo -n "${i%=*},"; done)"
     DEVNAMES="${DEVNAMES%,}"
   fi
 

Modified: mdadm/trunk/debian/initramfs/script.local-top
===================================================================
--- mdadm/trunk/debian/initramfs/script.local-top	2006-08-02 17:05:22 UTC (rev 64)
+++ mdadm/trunk/debian/initramfs/script.local-top	2006-08-02 17:13:34 UTC (rev 65)
@@ -38,7 +38,7 @@
   esac
 }
 
-[ -s /conf/mdadm.conf ] && . /conf/mdadm.conf
+[ -s /conf/raid.conf ] && . /conf/raid.conf
 
 mkdir /etc/mdadm
 $MDADM --examine --scan --config=partitions > /etc/mdadm.conf
@@ -63,7 +63,7 @@
 
 if [ ${RAID_DEVS:-all} = all ]; then
   
-  verbose && log_begin_msg "Assemblinging all RAID arrays"
+  verbose && log_begin_msg "Assembling all RAID arrays"
   
   if $MDADM --assemble --config=/etc/mdadm.conf --scan --run --auto=yes; then
     verbose && log_success_msg "success"
@@ -76,8 +76,8 @@
 else
   for dev in ${RAID_DEVS:-}; do
 
-    DEV=${dev%%:*}
-    UUID=${dev#*:}
+    DEV=${dev%=*}
+    UUID=${dev#*=}
 
     verbose && log_begin_msg "Assembling RAID array $DEV ($UUID)"
 




More information about the pkg-mdadm-commits mailing list