-   Linux - Hardware (
-   -   Fedora Core 7 directly on to SuperTrak SX6000 raid (

hydro12 08-16-2007 01:13 PM

Fedora Core 7 directly on to SuperTrak SX6000 raid
After 3 days of trial and error, I’ve managed to install Fedora Core 7 directly onto the 6 disk raid5 array of a SuperTrak SX6000. With all the threads and mailing list questions I’ve seen on the subject, I decided to contribute my experience in the hope that it may prove useful to someone else, and that when I need this information again 3 years from now, there’s a repository from which I can remember. This is a culmination of information from,, and my own aimless wanderings. Where applicable, I will link to those URLs. And yes, while it is much easier to install the OS on a non-raided drive and proceed, my masochistic self-loathing left me with the onus to persevere without a non-raided drive.

My hardware setup:

Asus motherboard w/ Duron 950 mHz
512mb RAM
(6) Seagate barracuda hdds attached to
Promise SuperTrak SX6000 w/ 128mb pc133 RAM
I should also say that my particular raid array was already partitioned from having rh9 installed on it previously. Thusly, partition 1 was an (now defunct) ext3 formatted redhat9 installation, partition 2 was SWAP, and partition 3 was an ex3 formatted space for my actual files that I mounted under /raid.

Let’s begin.

Although my system is (barely) i686, it is my understanding that FC7 has a bug(/feature?) that causes it to install i586 by default, even though it will tell you it’s i686 – it’s not. I started off by acquiring the kernel-2.6.21-1.3194.fc7.i586 file. You can find this on any number of Linux kernel mirrors. Let me reiterate at this point that the kernel-2.6.21-1.3194.fc7.i686 DID NOT work for my purposes because what was, in fact, being installed was i586, despite the output of ‘uname –a.’ I used the program 7-zip on a Windows machine to get inside the rpm and go to the /lib/modules/2.6.21*/kernel/drivers/messages/i2o directory and extract i2o_proc.ko and i2o_block.ko. I then hosted these files on a web-server over my LAN for later access.

The following is adapted from the HOWTO
I booted up my would-be raid server to the FC7 install DVD. At the initial screen where it prompts for regular GUI installation, text mode, rescue, etc., I hit [TAB] and added the options ‘expert askmethod’ after the initrd line, and hit [enter]. When it prompted me for my package installation location, I chose NFS only to configure my network adapter. Once configured, it asked me for the NFS and I gave it one (that I knew it wouldn’t find). It returned saying as much and I went back to the screen for choosing package installation location, this time choosing CDROM. At this point, it’s going to say “Running anaconda...” and begin to boot up an x session. Once it takes you to the first GUI screen asking you to hit “Forward,” instead, get back to a console with [ctrl]+[alt]+[F2]. Because of your previous steps of configuring the network adapter through the NFS screen, you should now be able to access those needed i2o modules. I went to the /tmp directory and did a wget on i2o_block.ko and i2o_proc.ko across my LAN. I then did a ‘chmod u+x i2o*’ to make them both executable to the root user (not sure if this is necessary, but it matched the permissions for the other .ko files in the /tmp directory, so I did it to pacify my need for consistency). From the /tmp dir, I issued insmod commands exactly like this:

insmod –p /tmp i2o_block.ko
insmod –p /tmp i2o_proc.ko

I tried varying permutations of the insmod command, and that was the only one I got to work correctly (and I had to be within the /tmp directory for it to work). With different insmod commands, I kept getting an error about the modules having unknown public keys. I also need to point out that you have to load the modules in this order. It seems i2o_proc is dependant on i2o_block. You should now do a lsmod | grep i2o to be sure they loaded. You should see an i2o_core in the lsmod as well since it should have started automatically (at least it did for me) with the rest of the automated modules. Unfortunately, I still had no /dev listings for my new i2o creations, so we make them via:

mkdir /dev/i2o
mknod /dev/i2o/had b 80 0
mknod /dev/i2o/hda1 b 80 1
mknod /dev/i2o/hda2 b 80 2
mknod /dev/i2o/hda3 b 80 3

Remember, I had 3 partitions (old rh9 installation, swap, and plain ol’ ext3 for my fileserver files). Setup block nodes w/ mknod for as many as you need (I suppose).

At this point, you want to [alt]+F6 back into the GUI installation and hit the ‘Forward’ button. When you reach Disk Druid (or whatever hideous GUI disc partitioning tool is used in FC7), it should now scan for previous Fedora installations and pick up your raid array. Yeehaw, let’s partition and install. Unfortunately, counter indicative to what the aforementioned HOWTO ( states, it won’t *just work* at this point – at least it didn’t for me. The kernel you just installed has the i2o configured as loadable modules, but your system can’t boot without i2o being integrated into the kernel (can’t boot from /dev if you can’t map to /dev because you can’t access modules on a /dev device not being loaded yet – cart<->horse).

So back to the FC7 boot DVD we go. Again, append ‘expert askmethod’ as boot options as peviously done and configure your network adapter in the same way. Drop yourself to a shell console in [alt]+F2 again. We’re going to wget the i2o_block.ko and i2o_proc.ko modules again and load them the same as last time. Then we’re going to make our device block nodes again with mknod setting up the primary linux partition we just created and installed on in the last step. Now we want to mount the linux partition (eg: mount /dev/i2o/hda1 /mnt/linux). Once we have it mounted we want to cd to /mnt/linux and chroot to /mnt/linux. Boom, /mnt/linux is now / and we have network access.

At this point, I followed verbatim the kernel recompiling information found at When I did the ‘make menuconfig’ portion, I went to i2o and configured them all (but the i2o_scsi, I believe) to be built-in, instead of modules. Oh, I also removed SMP, because my Duron barely single-processes. I finished recompiling, ran the mkinitrd command the instructions provide and edited my grub menu.lst and rebooted. Upon reboot, it fsck’d my partitions and booted up like it couldn’t be happier. Yippee-ki-yay mother-fsck’er.

mkrygeri 10-24-2007 11:50 AM

insmod command doesn't seem to work
Thank you SO MUCH for posting this. I would have never figured out how to go about this without this post. I'm pretty much a novice with Linux.

I followed all your instructions but the modules don't seem to load with the insmod commands.
lsmod doesn't show the i2o_proc or i2o_block modules loaded.
I don't get any errors when running the insmod commands.
Does anyone know how to toubleshoot this?
I really need to figure out how to get this i2o controller recognized.

thanks in advance for any help you can give!

hydro12 10-25-2007 12:28 AM


Originally Posted by mkrygeri (Post 2935139)
lsmod doesn't show the i2o_proc or i2o_block modules loaded.
I don't get any errors when running the insmod commands.
Does anyone know how to toubleshoot this?
I really need to figure out how to get this i2o controller recognized.

thanks in advance for any help you can give!

Don't thank me yet - it's obviously not working for you ;)

The only similar issue I experienced was when I was trying to load the incorrect version of the i2o modules (e.g.: loading the versions from the i686 kernel instead of the i586 kernel in my case). It didn't give me any errors, if I remember correctly, but just didn't load the modules at all. I can't tell you if it's the exact same thing, but you may want to verify which kernel build you're getting your i2o modules from (i586 vs. i686). Whichever you're using, try swapping to the other. It's hit or miss, but the best advice I can give. That server for me is down at the moment due to the Promise card giving me some issues. I have another on order and will look more closely at it once it arrives (hopefully in the next few days).

mkrygeri 10-26-2007 07:26 AM

neither version works
I tried both i586 and i686 versions. neither would load. I guess it just wasn't meant to be on this system.

Thanks for the help and insight. Al least I've learned something...

All times are GMT -5. The time now is 06:14 PM.