Hi Michael, On Thu, Apr 14, 2005 at 10:16:36AM +0400, Michael Tokarev wrote: > The last mdadm change -- 1.9.0-2.1 -- did NOT fix the bug, > but made the situation worse.
> rcS.d/S04mdadm-raid is now the FIRST thing the system is
> doing when booting. At that stage, /proc is not mounted
> (it is mounted later), and in mdadm-raid bootscript, there's
> the following code:
> if [ "x$AUTOSTART" = "xtrue" ] ; then
> if [ ! -f /proc/mdstat ] && [ -x /sbin/modprobe ] ; then
> /sbin/modprobe -k md > /dev/null 2>&1
> fi
> test -f /proc/mdstat || exit 0
> echo "Starting raid devices: "
> Obviously, without /proc mounted, the script will do right nothing,
> will not start your arrays, and the system becomes unbootable.
> The fix for this #294404 is a one-liner for mdadm-raid script.
> From the mdadm(8):
> -a, --auto{=no,yes,md,mdp,part,p}{NN}
> Instruct mdadm to create the device file if needed,
> possibly allocating an unused minor number. "md" causes
> a non-partitionable array to be used. "mdp", "part" or
> "p" causes a partitionable array (2.6 and later) to be
> used. "yes" requires the named md device to have a from
> this. See DEVICE NAMES below.
> This --auto options has been added recently to mdadm, to work
> around exactly this #294404 problem. So the real fix was just:
> - $MDADM -A -s
> + $MDADM -A -s --auto=md
> and probably similar for /sbin/mdrun too.
> But now with current state of the package, some more steps are
> necessary -- ie, to move the symlink back. I think the best
> is to add a test into postinst to check if the link is at
> S04 and if yes, move it back to S25.
> Please note: mdrun MUST DIE. I don't know why it is still here,
> this kludge has been written before people discovered mdadm can
> do all the work much better...
# mdadm -A -s --auto=md
mdadm: error opening /dev/md1: No such file or directory
#
I understand the described reasons why the fix in -2.1 is problematic
(mostly related to the need for additional drivers to be loaded on some
systems before trying to bring up RAID -- as discussed on IRC, on a sarge
system, /proc should be mounted well before this point). But, your proposed
fix was one I had evaluated, and I consistently get the above error when
trying to run mdadm -A -s --auto on a system that has udev loaded. Any
ideas?
Thanks,
--
Steve Langasek
postmodern programmer
signature.asc
Description: Digital signature

