Doesn't boot from a new degraded RAID1 array

Asked by FiloSottile

I decided to put my system on a raid1 array with md.
So, I duplicated the partition table, setted partition types on fd, created the degraded array (with "missing" disk) and finally copied my data and installed grub.
Then I found bug #462258 where I discovered that Ubuntu doesn't boot from degraded array (strange, I said, here https://bugs.launchpad.net/ubuntu/+source/mdadm/+bug/120375/comments/145 I read that it should ask me what I want to do...), anyway, I've tried all:
* bootdegraded=true kernel parameter
* dpkg-reconfigure mdadm
* editing /etc/initramfs-tools/conf.d/mdadm with BOOT_DEGRADED=true and update-initramfs
None works. It always says me that it can't find /dev/md2 (the root) and drops to the busybox, where mdadm -As doesn't work.
If in busybox I look for conf/conf.d/mdadm BOOT_DEGRADED is always on false...

If I boot from a LiveCD and run mdadm -As all works without a problem.
I work on a FakeRAID chip, but i boot with nodmraid option, so it shouldn't be a problem.

On busybox raid1 module seems to be charged.
I can provide fast shoots of the boot process.

P.S. all changes that I made to get it working was done chrooting on the md array from LiveCD

Ubuntu Karmic, Intel motherboard

Revision history for this message
FiloSottile (filosottile-wiki) said :
#1

A lot of informations on the web like bug #120375 and https://wiki.ubuntu.com/BootDegradedRaid are outdated.

See at the Karmic changelog https://wiki.ubuntu.com/KarmicKoala/ReleaseNotes#Automatic%20boot%20from%20a%20degraded%20RAID%20array%20not%20configured%20upon%20installation and the mdadm lucid version changelog:
--------------
mdadm (2.6.7.1-1ubuntu14) lucid; urgency=low

  * Fix boot_degraded handling during installation (LP: #462258):
    - Source /lib/preseed/preseed.sh in check.d/root_on_raid.
    - Change mdadm/boot_degraded default in templates file to match the
      apparently-intended behaviour (i.e. false), and stop overriding
      debconf preseeding if BOOT_DEGRADED is not already set in the
      initramfs configuration file.
--------------

I am suspecting that there is something in my kernel/initram/modules unrelated to degraded array that doesn't work. Any clue about how to discover what is missing?

Revision history for this message
FiloSottile (filosottile-wiki) said :
#2

Interesting also #259145 and https://wiki.ubuntu.com/ReliableRaid

I will try editing mdadm.conf as in #136252 , but I don't hope that it works...

Revision history for this message
FiloSottile (filosottile-wiki) said :
#3
Revision history for this message
FiloSottile (filosottile-wiki) said :
#4

Wrote "HOMEHOST all" in mdadm.conf as in bug #136252 and got to the next level.
Now my problem is bug #259145 and a fsck incongruence (probabily because i created the md array on an already existing fs):

root@ubuntu:~# fsck /dev/md1
fsck from util-linux-ng 2.16
e2fsck 1.41.9 (22-Aug-2009)
La dimensione del filesystem (secondo il superblocco) è 45028186 blocco(i)
La dimensione fisica del device è 45028160 blocco(i)
È probabile che il superblocco o la tavola delle partizioni siano corrotti!
Annulla<s>? sì

Can you help with this problem?

Provide an answer of your own, or ask FiloSottile for more information if necessary.

To post a message you must log in.