Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I'm running Ubuntu 12.04 precise. A recent apt-get upgrade ended successfully, but printed the following warning at the end:

update-initramfs: Generating /boot/initrd.img-3.2.0-21-generic
W: mdadm: the array /dev/md/odin:1 with UUID d65cf17d:fe860500:29648a86:d29c3195
W: mdadm: is currently active, but it is not listed in mdadm.conf. if
W: mdadm: it is needed for boot, then YOUR SYSTEM IS NOW UNBOOTABLE!
W: mdadm: please inspect the output of /usr/share/mdadm/mkconf, compare
W: mdadm: it to /etc/mdadm/mdadm.conf, and make the necessary changes.

I looked on serverfault and found this recent question. The accepted response suggested etc/mdadm/mdadm.conf was not properly updated, and the thing to do is to copy the list of active RAID arrays from the output of /usr/share/mdadm/mkconf to the appropriate place in /etc/mdadm/mdadm.conf.

In my case, the difference was one line: the output of /usr/share/mdadm/mkconf listed 2 arrays:

# definitions of existing MD arrays
ARRAY /dev/md/1 metadata=1.2 UUID=d65cf17d:fe860500:29648a86:d29c3195 name=odin:1
ARRAY /dev/md/0 metadata=1.2 UUID=859e9e8c:34e69e1e:d934738a:ebdf1249 name=odin:0

and /etc/mdadm/mdadm.conf only listed one of them:

# definitions of existing MD arrays
ARRAY /dev/md/0 metadata=1.2 UUID=859e9e8c:34e69e1e:d934738a:ebdf1249
name=odin:0

The system is configured to boot from /dev/md0.

Following the advice in the serverfault post, I added the missing ARRAY definition to /etc/mdadm/mdadm.conf and ran update-initramfs -u. There were no warnings. When I tried to reboot, however, the system could not do so from the RAID.

Interestingly, I was able to boot by

  1. booting from an Ubuntu LiveCD
  2. choosing "boot from hard disk" from the LiveCD's menu

so the server is running again, but I would like to be able to boot it normally.

As you can tell, I am new to dealing with RAID setups on Linux, and so I wish to proceed cautiously. Any advice or suggestions would be greatly appreciated!

share|improve this question

1 Answer 1

As far as I know you can not directly boot from an array created with mdadm. You need to at least have a small boot partition outside the array in order to boot. That's why you can boot with a CD, it's serving as the boot volume outside the array. Then the array gets started and you're in.

For more information see: How to create a bootable redundant Debian system with a 3 or 4 (or more) disk software raid10?

This will tell you how to set it up so you can boot.

share|improve this answer
    
I did not set up the RAID, so I am sort of trying to reverse engineer everything at this point. This was helpful for my understanding. How can I determine if such boot partitions exist? I tried looking in mount, but there's no specific /boot partition, just /. The only entry in /etc/fstab mounts / at the UUID of one of the RAID arrays. –  handsomeransoms Apr 17 '12 at 21:16

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.