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

Re: Problem booting RAID1/mdadm system when one disk is unplugged

Justin Piszcz wrote:

On Fri, 1 Sep 2006, James Brown wrote:

Justin Piszcz wrote:

On Fri, 1 Sep 2006, James Brown wrote:


I have already posted this question to gmane.linux.raid, but would really appreciate some help from a Debian perspective please...

My System has 2x120GB IDE disks with the an up-to-date Sarge install, running kernel 2.6.8-3 and configured for mirroring.

When I tested booting my system, I found:

a) A kernel panic unless both disks are plugged in.
b) One disk removes from the array each reboot.

The relevant logs are on this thread:
http://article.gmane.org/gmane.linux.raid/13033/match=newbie+kernel+panic+raid1 I was advised this was a problem with my initrd because it didn't contain a mdadm.conf file and presumably that I should make a new one.

Unfortunately, some friends of mine do not agree that my initrd is the problem because they point out that I can still boot when two disks are present. What do people here think?

Thanks in advance


To UNSUBSCRIBE, email to debian-user-REQUEST@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

1) You do not need an initrd at all.

I'm actually a newbie and using GRUB as it was installed by default.

Will deleting the /boot/initrd.img-2.6.8-3-386 file and initrd instruction within menu.lst be sufficient?

No, you need to compile your own kernel with support for your hardware that you use.

The trouble is that I wanted a generic kernel to make adding different hardware relatively painless. Also, wouldn't this mean I would need to recompile the kernel every time a security patch is released? I hope this is wrong, otherwise I may as well quit now, part with some of my hard-earned and install Windows ;-).

2) I would make sure you are booting from the /dev/md* partition.

I *think* I am booting from the /dev/md0 partition:

# cat /boot/grub/menu.lst
# groot=(hd0,5)
title           Debian GNU/Linux, kernel 2.6.8-3-386
root            (hd0,5)
kernel          /boot/vmlinuz-2.6.8-3-386 root=/dev/md0 ro
initrd          /boot/initrd.img-2.6.8-3-386

That appears to be right, but I would ditch the initrd stuff and use a statically compiled kernel that you create for your hardware. Also, I use LILO here.

I'll move to LILO and test booting again.

I understand this means the system will load the BootLoader from the first disk BIOS presents, and partition number 6 on that disk (in my case, hda6 or hdc6). It will then try to boot the kernel from /dev/md0, which it should manage:

# cat /etc/fstab
proc            /proc           proc    defaults        0       0
/dev/md0 / ext3 defaults,errors=remount-ro 0 1
/dev/md1        /var/mail       ext3    defaults        0       2
/dev/hda5       none            swap    sw              0       0
/dev/hdc5       none            swap    sw              0       0
/dev/hdd        /media/cdrom0   iso9660 ro,user,noauto  0       0

I don't see a problem here, but please correct me if I've said somthing wrong.

A classic mistake. NEVER use swap on different drives. You always want to RAID1 the swap as well. If one disk dies and you are swapping to it, the integrity of the data can be at risk. Always keep your swap on RAID.

The reason I didn't include swap in the RAID1 was because I once installed Vinum on FreeBSD and I believe it was recommended not to mirror swap at that time because the PC would crash anyway if one disk failed. I will try to add swap into the mirror.

  >> 3) You must have a /boot on a /dev/md partition. >
From looking at the above, /boot would fall under /dev/md0 (I think)?

It /looks/ right.

4) You need LILO installed with the special raid option in the config.

Maybe I should ditch GRUB and learn/install LILO.


If you are ever on IRC sometime, I may be able to better help you with your issues.

That's very kind, thanks. I just want to see if anyone else has any suggestions at the moment.

The next step you need to really do is compile your own kernel and get it working with RAID support and stop using an initrd/kernel.


5) I have done this and tested by pulling each HDD out and it working
   successfully with Debian + 2x74GB raptors.


Thanks very much for your time.

To UNSUBSCRIBE, email to debian-user-REQUEST@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

Reply to: