linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* ANNOUNCE: mdadm 3.0-devel1 - A tool for managing Soft RAID under Linux
@ 2008-09-24  0:25 Neil Brown
  2008-09-24  3:43 ` problem adding disk Chris Eddington
  0 siblings, 1 reply; 3+ messages in thread
From: Neil Brown @ 2008-09-24  0:25 UTC (permalink / raw)
  To: linux-raid




I am pleased to announce the availability of
   mdadm version 3.0-devel1

It is available at the usual places:
   countrycode=xx.
   http://www.${countrycode}kernel.org/pub/linux/utils/raid/mdadm/
and via git at
   git://neil.brown.name/mdadm
   http://neil.brown.name/git?p=mdadm

Note that this is a "devel" release.  It is not intended for
production use yet, but rather for testing and ongoing development.

The significant change which justifies the new major version number is
that mdadm can now handle metadata updates entirely in userspace.
This allows mdadm to support metadata formats that the kernel knows
nothing about.

Currently two such metadata formats are supported:
  - DDF  - The SNIA standard format
  - Intel Matrix - The metadata used by recent Intel ICH controlers.

The manual pages have not yet been updated, but here is a brief outline.

Externally managed metadata introduces the concept of a 'container'.
A container is a collection of (normally) physical devices which have
a common set of metadata.  A container is assembled as an md array, but
is left 'inactive'.

A container can contain one or more data arrays.  These are composed from
slices (partitions?) of various devices in the container.

For example, a 5 devices DDF set can container a RAID1 using the first
half of two devices, a RAID0 using the first half of the remain 3 devices,
and a RAID5 over thte second half of all 5 devices.

A container can be created with

   mdadm --create /dev/md0 -e ddf -n5 /dev/sd[abcde]

or "-e imsm" to use the Intel Matrix Storage Manager.

An array can be created within a container either by giving the
container name and the only member:

   mdadm -C /dev/md1 --level raid1 -n 2 /dev/md0

or by listing the component devices

   mdadm -C /dev/md2 --level raid0 -n 3 /dev/sd[cde]

The assemble a container, it is easiest just to pass each device in turn to 
mdadm -I

  for i in /dev/sd[abcde]
  do mdadm -I $i
  done

This will assemble the container and the components.

Alternately the container can be assembled explicitly

   mdadm -A /dev/md0 /dev/sd[abcde]

Then the components can all be assembled with

   mdadm -I /dev/md0

For each container, mdadm will start a program called "mdmon" which will
monitor the array and effect any metadata updates needed.  The array is
initially assembled readonly. It is up to "mdmon" to mark the metadata 
as 'dirty' and which the array to 'read-write'.

The version 0.90 and 1.x metadata formats supported by previous
versions for mdadm are still supported and the kernel still performs
the same updates it use to.  The new 'mdmon' approach is only used for
newly introduced metadata types.

Any testing and feedback will be greatly appreciated.

NeilBrown  18th September 2008


^ permalink raw reply	[flat|nested] 3+ messages in thread

* problem adding disk
  2008-09-24  0:25 ANNOUNCE: mdadm 3.0-devel1 - A tool for managing Soft RAID under Linux Neil Brown
@ 2008-09-24  3:43 ` Chris Eddington
  2008-09-24 14:22   ` michael
  0 siblings, 1 reply; 3+ messages in thread
From: Chris Eddington @ 2008-09-24  3:43 UTC (permalink / raw)
  To: linux-raid

Hi,

I had a disk failure and replaced it with an equivalent disk, partition, 
etc. 

It seems to add correctly to the existing array when using mdadm 
/dev/md0 --add /dev/sdd1 after re-syncing, but when I restart the array 
(or reboot) it never accepts it, reporting the message below.  It thinks 
the 4th partition is <sdd> instead of sdd1. 

Turns out that /dev/sdd1 does not exist, but fdisk -l reports that it is 
there (also below).
Try to start the array with just sdd does not work either:
altair:~$ sudo mdadm --assemble /dev/md0 /dev/sda1 /dev/sdb1 /dev/sdc1 
/dev/sdd
mdadm: /dev/md0 has been started with 3 drives (out of 4).
altair:~$ sudo mdadm --stop /dev/md0

Does anyone have instructions on what to try?  Why is /dev/sdd1 not 
visible? 

Thanks,
Chris

[  580.723453] md: bind<sdb1>
[  580.723710] md: bind<sdc1>
[  580.723875] md: bind<sdd>
[  580.724051] md: bind<sda1>
[  580.724152] md: kicking non-fresh sdd from array!
[  580.724274] md: unbind<sdd>
[  580.724355] md: export_rdev(sdd)
[  580.756272] raid5: device sda1 operational as raid disk 0
[  580.756277] raid5: device sdc1 operational as raid disk 2
[  580.756279] raid5: device sdb1 operational as raid disk 1
[  580.757005] raid5: allocated 4274kB for md0
[  580.757009] raid5: raid level 5 set md0 active with 3 out of 4 
devices, algorithm 2
[  580.757012] RAID5 conf printout:
[  580.757013]  --- rd:4 wd:3
[  580.757015]  disk 0, o:1, dev:sda1
[  580.757016]  disk 1, o:1, dev:sdb1
[  580.757018]  disk 2, o:1, dev:sdc1

------------------------------------------------------------------------------------
Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x0009f318

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1       60801   488384001   fd  Linux raid 
autodetect

Disk /dev/sdb: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000a56ab

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1       60801   488384001   fd  Linux raid 
autodetect

Disk /dev/sdc: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000acab6

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1       60801   488384001   fd  Linux raid 
autodetect

Disk /dev/sdd: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xbc28bcf8

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1               1       60801   488384001   fd  Linux raid 
autodetect

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: problem adding disk
  2008-09-24  3:43 ` problem adding disk Chris Eddington
@ 2008-09-24 14:22   ` michael
  0 siblings, 0 replies; 3+ messages in thread
From: michael @ 2008-09-24 14:22 UTC (permalink / raw)
  To: chrise; +Cc: linux-raid

Chris Eddington wrote:
> Hi,
> 
> I had a disk failure and replaced it with an equivalent disk, partition, 
> etc.
> It seems to add correctly to the existing array when using mdadm 
> /dev/md0 --add /dev/sdd1 after re-syncing, but when I restart the array 
> (or reboot) it never accepts it, reporting the message below.  It thinks 
> the 4th partition is <sdd> instead of sdd1.
> Turns out that /dev/sdd1 does not exist, but fdisk -l reports that it is 
> there (also below).
> Try to start the array with just sdd does not work either:
> altair:~$ sudo mdadm --assemble /dev/md0 /dev/sda1 /dev/sdb1 /dev/sdc1 
> /dev/sdd
> mdadm: /dev/md0 has been started with 3 drives (out of 4).
> altair:~$ sudo mdadm --stop /dev/md0

Looks similar to an issue I had a month ago:

http://marc.info/?l=linux-raid&m=121882238819928&w=2

Does this sound like the same problem to you?

With Neil's solution:

mdadm --zero-superblock /dev/sdg

You would need to adjust it to /dev/sdd.

Michael

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2008-09-24 14:22 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-09-24  0:25 ANNOUNCE: mdadm 3.0-devel1 - A tool for managing Soft RAID under Linux Neil Brown
2008-09-24  3:43 ` problem adding disk Chris Eddington
2008-09-24 14:22   ` michael

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).