Rich Freeman on 12 Jan 2011 06:37:19 -0800

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

[PLUG] Strange RAID Problems

I'm trying to run an mdadm raid1 as my root using autodetection during
boot (with no initrd).  This used to work just fine.  Now, however, it
seems like the raid device minor numbers are not stable between boots,
and sometimes the partition isn't detected at all.

I managed to get the system running by supplying an
md=126,/dev/sda2,/dev/sdb2 to the kernel, which helped it assemble the

Some useful info:

mdadm --detail /dev/md126
        Version : 0.90
  Creation Time : Tue Apr 24 21:22:25 2007
     Raid Level : raid1
     Array Size : 1052160 (1027.67 MiB 1077.41 MB)
  Used Dev Size : 1052160 (1027.67 MiB 1077.41 MB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 126
    Persistence : Superblock is persistent

  Intent Bitmap : Internal

    Update Time : Wed Jan 12 09:32:22 2011
          State : active
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           UUID : dae2458d:e144dbde:34d5107b:2f8c859e
         Events : 0.182

    Number   Major   Minor   RaidDevice State
       0       8        2        0      active sync   /dev/sda2
       1       8       18        1      active sync   /dev/sdb2

mdadm --examine /dev/md126
mdadm: No md superblock detected on /dev/md126

I suspect that this may be the crux of the matter - something odd is
going on with the raid superblocks.  I suspect that mdadm can detect
and assemble the raid correctly, but the kernel cannot.  This makes a
direct boot with autodectection impossible.

My long-term plan is to move to an initrd and boot with root=UUID=####
which should eliminate any instability issues.

In the short-term, I'm thinking about just adding the md= line to my
grub.conf.  However, what I'd like to know is what happens if one of
my drive fails and /dev/sda or /dev/sdb is no longer the same drive
that it used to be.  What I'd like it to do is mount the root in
degraded mode with the one good partition.  What I DON'T want it to do
is try to treat the second partition on some other random drive as
part of that array and do who knows what to it.

The behavior of some of this seems sparsely documented.  Anybody have
any experience with this?  Worst case I can always just keep nursing
it along until I migrate to an initrd, which should make it all
Philadelphia Linux Users Group         --
Announcements -
General Discussion  --