Bug#570516: md UUID changed

Steve McIntyre steve at einval.com
Mon Feb 21 11:59:25 UTC 2011


severity 570516 grave
thanks

On Thu, May 27, 2010 at 07:42:29AM +0200, Josselin Mouette wrote:
>Le mercredi 26 mai 2010 à 18:25 +1000, Neil Brown a écrit : 
>> > also sprach Neil Brown <neilb at suse.de> [2010.05.26.1004 +0200]:
>> > > It looks like "mdadm -A --update=homehost" or "--auto-update-homehost" was
>> > > used.  With v0.90 metadata, the homehost is recorded by storing a hash of it
>> > > in the uuid (as there is no-where else to store something like that).
>> > > So arrays on the same homehost will have the same second-half of the uuid.
>> > 
>> > Even if the hostname didn't change?
>> 
>> Only if the hostname changed, or the hostname had not previously been encoded
>> in the uuid.
>
>The hostname didn’t change. However the latter might be possible, I
>don’t really know. The MD array was built from lenny’s d-i.

I've just started to upgrade my main fileserver at home from Lenny to
Squeeze, and I think I've been bitten by this bug (or something very
similar) in a big way. I've started off with a system running a
locally-built 2.6.28 kernel and a number of RAID devices, all
configured with version 0.9 superblocks (the default in Lenny,
AFAICT).

Using my 2.6.28 kernel and mdadm version 2.6.7.2-3, things work
fine. I've installed only the squeeze kernel (2.6.32) and rebooted
with that, to make sure that it boots. Unfortunately, it doesn't. I
see a lot of messages from the RAID assembly step, complaining that
various of the RAID0 devices are missing components. Hmmm, OK. So
let's go back to the old kernel and re-check.

However, now when I use the 2.6.28 system I get similar
problems. Previously-working devices are now not working. I'm seeing
complaints all over the place that homehost definitions don't match
when trying to assemble devices. *I* did not change anything here, so
it suggests that something (the kernel RAID layer? mdadm init scripts
in the initramfs?) has modified my superblocks in a broken way and
stopped my system booting.

Since then, I've tried to force update of the homehost/uuid settings
in the superblocks, but to no avail. Then I saw that I was on the old
superblock version that didn't store the homehost itself.

I've only managed to get things up and running by actually recreating
the RAID1 devices by hand, using the same settings as the previous
devices. Scary stuff... :-( Yet if I reboot into the new kernel again,
things fall apart again. Even on a newly-created v1.2 device.

Help!

-- 
Steve McIntyre, Cambridge, UK.                                steve at einval.com
Welcome my son, welcome to the machine.






More information about the pkg-mdadm-devel mailing list