Re: MD device not found on boot
02/03/2012 16:51, Daniel Bareiro wrote:
> On Friday, 02 March 2012 10:52:37 +0100,
> tv.debian@googlemail.com wrote:
>
>>> Currently I have a host with Debian GNU/Linux Lenny on which I've
>>> compiled a 2.6.32 kernel (using the Backports source code) to add
>>> support of Layer7 and IMQ.
>>>
>>> The package with the Backports kernel binary works well, but when I boot
>>> my compiled kernel, MD device on / is not found. The configuration file
>>> that I took as a reference is the provided by the installed Backports
>>> kernel binary, so I think it should include modules for MD, and then I
>>> could confirm this in the configuration file used to compile my kernel.
>>>
>>> Perhaps it is a problem in generating the initrd file? The process I
>>> used to compile and install the kernel is the Debian way, creating a
>>> package then installed with dpkg.
>
>> Hi,
[cut]
>> Can you tell us what kind of raid and metadata we are talking about.
>
> This is the detail of the root device:
>
> # mdadm --detail /dev/md2
> /dev/md2:
> Version : 00.90
> Creation Time : Wed Sep 6 11:27:09 2006
> Raid Level : raid1
> Array Size : 19534976 (18.63 GiB 20.00 GB)
> Used Dev Size : 19534976 (18.63 GiB 20.00 GB)
> Raid Devices : 2
> Total Devices : 1
> Preferred Minor : 2
> Persistence : Superblock is persistent
>
> Update Time : Fri Mar 2 11:41:16 2012
> State : clean, degraded
> Active Devices : 1
> Working Devices : 1
> Failed Devices : 0
> Spare Devices : 0
>
> UUID : da5a0c19:c38ccc6d:325196eb:eb163021
> Events : 0.5276104
>
> Number Major Minor RaidDevice State
> 0 0 0 0 removed
> 1 8 3 1 active sync /dev/sda3
>
> The /etc/mdadm/mdadm.conf used metadata=00.90. I changed it to 0.90, if
> this may cause some inconvenience (metadata format 00.90 unknown,
> ignored). But I don't think the problem is this because
> 2.6.32-bpo.5-amd64 boots without problems and my compiled kernel is
> based on config-2.6.32-bpo.5-amd64; I only patch the kernel with support
> of IMQ and Layer7.
>
> This is the output with default kernel options:
>
> Gave up waiting for root device. Common problems:
> - Boot args (cat /proc/cmdline)
> - Check rootdelay= (did the system wait long enought?)
> - Check root= (did the system wait for the right revice?)
> - Missing modules (cat /proc/mdoules: Is /dev)
> ALERT! /dev/md2 does not exist. Dropping to a shell!
>
> And using rootdelay=120:
>
> Success: loaded module raid1.
> done
> Begin: Assembling all MD arrays... mdadm: metadata format 00.90 unknown ignored.
> mdadm: metada format 00.90 unknown, ignored
> mdadm: metada format 00.90 unknown, ignored
> mdadm: metada format 00.90 unknown, ignored
> mdadm: metada format 00.90 unknown, ignored
> mdadm: No devices listed in conf file were found
> Failure: failed to assamble all arrays.
> done.
> Begin: Waiting for udev to process events ... done
> done
> Begin: waiting for root filesystem ... done
> Gave up waiting for root device. Common problems:
> - Boot args (cat /proc/cmdline)
> - Check rootdelay= (did the system wait long enought?)
> - Check root= (did the system wait for the right revice?)
> - Missing modules (cat /proc/mdoules: Is /dev)
> ALERT! /dev/md2 does not exist. Dropping to a shell!
>
>
>
> Thanks for your reply.
>
>
> Regards,
> Daniel
metadata=0.90 in mdadm.conf is fine. The "00.90" problem looks like this
old problem described in bug #606389, it's supposed to be fixed in
Squeeze mdadm... Anyway, correcting to 0.90 in mdadm.conf should do the
trick.
This "mdadm: No devices listed in conf file were found" might suggest
that the mdadm.conf file isn't up to date ? Try populating it and
rebuilding the initrd. If it is up to date, then it's likely not picked
up by the initramfs.
Look for "mdadm" scripts under /etc/initramfs-tools/$(hooks|scripts).
Are you using kernel-package "make-kpkg" or the "make deb-pkg" target to
build your kernel packages ? The former requires a bit of manual
configuration to work properly.
Reply to: