> On Fri, Jul 09, 2004 at 09:45:56PM +1000, Clement wrote: > > The /dev/md0 is not corrupted yet. In kernel 2.6.6, I can > still get > > it by > > > > # mdadm -A /dev/md0 /dev/hda1 /dev/hdc1 > > mdadm: /dev/md0 has been started with 2 drives. > > # mount /dev/md0 /boot > > # cat /proc/mdstat > > Personalities : [raid1] > > md0 : active raid1 hda1[0] hdc1[1] > > 80192 blocks [2/2] [UU] > > > > md1 : active raid1 hda2[0] hdc2[1] > > 4883648 blocks [2/2] [UU] > > Your partitions should be of type "Linux Raid Autodetect" but > I assume you know that. Futhermore the kernel should have > RAID builtin and not as modules. I didn't know > kernel-image-* packages had RAID builtin, I alsways compile > my kernels myself, but again I guess you know this. Just > stating the obvious.
NO this is not true, RAID can be loaded from an initrd as modules just fine. Once your up and running on raid with an initrd, you have the easiest way to upgrade your kernel without the need to recompile at all... > The only thing I can think of is that /boot is maybe an old > style RAID device? Have a look what `mdadm -E /dev/hda1' > tells you, it might help you. I'm not sure what would be the > solution to this. Maybe zeroing the superblock with mdadm > and then makeing a new one. This should not damage any data > afaik. But it still is highly dangerous and I'm just doing > this on top of my head whithouth checking anything! You be warned! > Hmm... I can verify the 2.6.6 kernel works fine with raid1, I have it running on several boxes. Once you have a system running raid from initrd, std debian kernels should install fine without the need for modification. Be sure that you have booted into the raid /root or /boot partitions when installing the kernel, otherwise the initrd will not automatically pick-up the modules required at boot time. You might consider adjusting /etc/mkinitrd/modules to accomplish this manually, if you are unable to boot into your raid partitions. A CHROOT into the raid then installing the kernel image will not suffice in generating the correct initrd. Zeroing the superblock would be a last resort in my book, but I'm hardly an expert here. If you can't boot into the raid, you'll need compile your own initrd with mkinitrd package and the debian kernel source; modify your /etc/mkinitrd/modules to have all the appropraite driver modules be they SCSI, IDE/ATA & RAID => then compile with something like... make-kpkg --revision=myraid.1.0 --initrd --bzimage kernel_image Hope this helps, Cheers, Lew Shobbrook

