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

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: