Ooooohhh...does this mean I can move ALL of my disks and still start the
array?  I've had a couple times now when I removed one disk and ALL the
others bumped down a notch so raid wouldn't autostart.  It would find the
first disk but the others would all be out-of-place.

Also....can mdctl be used to show the current raid devices (i.e.
automatically create a raidtab entry???) -- this would be as a sanity check
before you try a mkraid on things...

________________________________________
Michael D. Black   Principal Engineer
[EMAIL PROTECTED]  321-676-2923,x203
http://www.csihq.com  Computer Science Innovations
http://www.csihq.com/~mike  My home page
FAX 321-676-2355
----- Original Message -----
From: "Neil Brown" <[EMAIL PROTECTED]>
To: "Scott Smyth" <[EMAIL PROTECTED]>
Cc: <[EMAIL PROTECTED]>
Sent: Thursday, June 07, 2001 10:41 PM
Subject: Re: failure of raid 5 when first disk is unavailable


On Thursday June 7, [EMAIL PROTECTED] wrote:
> Hi Neil;
>
> I am hoping you are going to tell me this is already solved,
> but here goes...

Almost:-)

>
> scenario:
> hda4, hdb4, and hdc4 in a raid 5 with no hotspare.
>
>
> With 2.4.3 XFS kernels, it seems that a raid 5 does not come
> up correctly if the first disk is unavailable.  The error message
> that arises in the syslog from the md driver is:
>
> md: could not lock hda4, zero size?  marking faulty
> md: could not import hda4.
> md: autostart hda4 failed!
>

Yep. This happens when you use "raidstart".
It doesn't happen if you set the partition type to LINUX_RAID and use
the autodetect functionality.

raidstart just takes one drive, gives it to the kernel, and say "look
in the superblock for the major/minor of the other devices".

This has several failure modes.

It is partly for this reason that I am writting a replacement "md"
management tool - mdctl.

I wasn't going to announce it just yet because it is very incomplete,
but you have pushed me into it :-)

 http://www.cse.unsw.edu.au/~neilb/source/mdctl/mdctl-v0.2.tgz

is a current snapshot.  I compiles (for me) and
   mdctl --help

works. "mdctl --Assemble" is nearly there.

Comments welcome.

In 2.2, there is no other way to start an array than "give one device
to the kernel and tell it to look for others".  So mdctl will
find the device numbers of the devices in the array and re-write the
super block if necessary to make the array start.

In 2.4, mdctl can use a
  SET_ARRAY_INFO / ADD_NEW_DISK* / RUN_ARRAY
sequence to start a new array.

If you don't like the name "mdctl" (I don't), please suggest another.

NeilBrown
-
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to [EMAIL PROTECTED]

-
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to [EMAIL PROTECTED]

Reply via email to