Linux Step By Steps

FASTRAK66 RAID

Written by Tarek Heiland <tarek@bakas.com.au>.  Last updated 14-May-2002.

This email I wrote as a bit of an instruction manual to myself.



NOTE: The newer Promise controllers do not cause anywhere near the same hassles and the drivers from the manufacturer work fine.  I.e. Fastrack 100 under 7.x redhat are quite ok and you don't need to follow any dervied process to make it work.

There has been a lot of talk about patching the Promise Ultra 66 to make it a Fasttrak 66.

These steps are not for the faint hearted, and you will be using Beta, experimental and anything in between drivers. Lilo may not work and you will need to #%!@#%@#$ around with loadlin and a bootstrap DOS partition.

My config is

IDE mirror (2 x 20 GB Fujitsu)
MSI 6163 PRO M/B and Celeron 500,
Trident 975
PCI NIC ,
Intel pro 100 NIC,
128MB PC133 RAM
CD-rom on primary master
M/B IDE controller

I have it all working now !!!! (2.2.15 kernel) The Drives are in UDMA 66 mode and it runs. I have successfully removed a mirrored drive and have had it continue working. Rebuilding 20 GB mirror takes a while though!

Have not yet explored Raid -> Linux HDD fail notification signal .

This makes basically a linux system bootable straight off the mirror using a small mirrored loadlin dos partition to bootstrap the linux system.

Things you will need!
a) A win98 Boot disk
b) A Redhat 6.0 CD-ROM (< 6 won't work and my 6.1 also failed)

1. Obtain and get a Promise Ultra 66 IDE controller
2. Flash it with the latest Fasttrak Bios (current stable 1.20)
3. Solder 100R resistor from pin 23 to gnd (Sandwich with screw to backplane)
4. Install RAID controller in system, and configure drive array in Bios (No dramas here)

Forget about trying to run a normal CD-rom RH install, it will not work, as there is no support for the IDE controller.

5. Boot from Win98 boot disk, use Fdisk and create a small DOS partition (mine is 24 MB FAT 12).

This is a really necessary step to make it bootable as you will have some real fun with Fdisk in Linux on this controller.. (make this partition active) (I have played with latest LILO and various compile options without avail)

Reboot of floppy and format this partition.

Make sure it is bootable!

6. Go to www.promise.com and download the Beta drivers and rawwrite a boot disk

You now require a Redhat 6.0 CD (my 6.1 one did not work and hung after CD detection).  Boot from this floppy, press enter at boot prompt Select 1 as the first boot.

7. Redhat installation should now start

Partition drives as minimum

Small Dos created at step 5 (mine is 24MB Fat 12 for loadlin, flash utilities etc - absolutely required as lilo will not work - I also mount as /dos)

A Boot partition (to make sure there are no 1024 cyl issues)
A swap partition
Your / partition + any more you would like.
You can in dual boots of course have the DOS any size you like and any FAT flavour.

continue as per normal but at set time zone , shell out (Alt-F2 and run ./cpu66) this copies files from floppy to /root shell back and keep going as normal

8. It will crash and burn when it trys to run.
9. Reboot off floppy and at boot type

rescue root=/dev/hdxx initrd=initrd.img

xx=your root mount point mine is /dev/hde7
at prompt select 2 for second boot


This will get you into system the kernel running has nothing going on it (i.e. you cannot mount VFAT or any other partition types which is a real BUGGER!$#@$)

Make sure you have mtools installed, if not install it of Redhat CD ("mount -t iso9660 /dev/cdrom /mnt/cdrom" will work thank God!)

As root run:
sh setup-u66
this file is what is copied over with the cpu66 command. It copies the loadable module into the system and creates a new initrd using mkinitrd + preloads the IDE module.

Now copy from /boot the active vmlinuz and initrd files.

10. Prepare DOS partition

a) Copy Files from Win 98 boot floppy to the DOS Partition
b) Modify the Files Autoexec.bat, setramd.bat to point to C: instead of A:
c) Modify config.sys to remove unnecessary drivers (not essential) and remove these drivers
d) From CD copy Loadlin to DOS partition
e) Copy vmlinuz and intrd files from floppy to DOS partition
f) In Config.sys and Autoexec.bat insert new option to boot linux Autoexec command will be
loadlin vmlinuz root=/dev/hdxx initrd=initrd
changing vmlinuz, initrd and hdxx as appropriate to match your files and mount point

11. Reboot of DOS Partition, and start linux
12. Linux should boot with proper 6.0 Kernel now (at last)

This gets you basically going. Now you wish to upgrade the Kernel again.

Have fun, even using the setup-U66 as a guide it refuses to boot.

I have it going with the following way.

13. Copy Kernel source over (I am using 2.2.15)
14. Obtain IDE patch for Kernel from http://www.kernel.org/pub/linux/kernel/people/hedrick/
15 Patch Kernel using "patch -p0 <Patch file name>" in directory containing the linux-2.2.15 source directory tree
16 Now recompile Kernel making sure you include the PDC20262 IDE driver option (added by patch) ( if you are game the experimental raid option directly beneath it (It is called something different but I cannot remember)).
17. make dep, make bzImage etc as per usual
18. Run "mkinitrd /boot/initrd.000 2.2.15" to make a initrd file
19. Copy the bzImage and initrd.000 files to the dos partition
20. Modify autoexec.bat to reflect new Image files (loadlin bzImage root=/dev/hdxx initrd=initrd.000)

Reboot and all should be working.