My upgrade to Fedora 7: rocky start but great finish
Posted by Tom Moertel Thu, 07 Jun 2007 04:43:00 GMT
Tonight I upgraded my main workstation from Fedora Core 6 to Fedora 7. The result is an impressively polished working environment. Everything is snappy and crisp. I love it. Kudos to the Fedora team!
Getting Fedora 7 to boot, however, took some doing.
After the upgrade, my workstation rebooted – and then hung. The problem was that the raid456 module wasn’t getting loaded by the kernel, and thus the kernel couldn’t detect my RAID-5 root filesystem, and thus Halt.
Interestingly, the corresponding error in the kernel boot log said that the module couldn’t be loaded because it existed:
error inserting /lib/raid456.ko: file exists
What’s the problem? The file is there, isn’t it? You just said so!
Booting into the install DVD’s rescue mode (very handy), I ran mkinitrd by hand to rebuild the initial disk image that primes the kernel with the modules it needs to boot the system. (An older version of mkinitrd would sometimes forget to add the raid456 module to the image, so I figured maybe that’s what the cryptic error message was hinting at.) I added the -v flag to the command line to see what was really going on and caught this interesting tidbit:
# kver=`uname -r`
# mkinitrd -v -f /boot/initrd-$kver.img $kver
...
Adding module ext3
Adding module xor
Adding module raid456
Adding module raid456 <<== FLAMIN' MONKEY EYES TIMES TWO!
Adding module scsi_mod
Adding module sd_mod
...
The raid456 module was, for some reason, being added to the image twice. That redundancy, I reasoned, is what caused the cryptic error message in the boot log. The module couldn’t be inserted because it already existed! That theory approximately made sense, so I ran with it.
Thus I had to edit the code for mkinitrd to prevent it from trying to add the module twice. Then I used my adjusted version of the tool to rebuild the initial disk image. Finally, I rebooted the system and – with fingers crossed for luck – entered the glorious world of Fedora 7.
Almost. Neither the nv nor the nouveau driver for X.Org X11 detected the true geometry of my Dell 2001FP monitor. So I had to slink back to the non-free nVidia driver to get my full resolution back.
Those two issues aside, the whole process was delightful.
And, now that I’m using Fedora 7, it’s rockin’. Just what my workstation needed.

Hey, glad I found your post – it saved me a lot of headaches. I had exactly the same problem, and while I know something about computers, I don’t consider myself a Linux guru. Following your instructions fixed the situation! Thanks again! (Still, I’m a little puzzled how something like this can exist in the 7th major version of Fedora..)
Thanks that sorted me out too. Was moving HDs from one motherboard to another and F7 couldn’t find the /dev/md1… Thanks again!
” Thus I had to edit the code for mkinitrd to prevent it from trying to add the module twice.”
Can you please provide the step by step procedure to do the above.
Ahmed, I’m sorry, but the upgrade I wrote about happened a long time ago, and I no longer have access to the script in question, so I’m going from memory here. If you want to make a similar edit yourself, read through the mkinitrd script, find the place where it echoes “Using modules $MODULES”, and then, just above that spot, add a bit of code to remove any duplicates from the
$MODULESvariable, which will contain a whitespace-separated list of modules.Cheers,
Tom