6. Installing Native Linux RAID

The first step you want to take is to configure your networking and connect your computer to Internet, which is still running under Promise Driver SCSI emulation. Next you will install native Linux RAID.

  1. Login as root. Go to www.kernel.org and download latest kernel 2.4.19.tar.gz into /root.

  2. Configure your kernel:

    cd /usr/src/ 
    tar xvzf /root/linux-2.4.19.tar.gz 
    cd linux-2.4.19          # cd to kernel source directory just created by tar
    cp config.txt .config    #(See NOTE below to find out where to get config.txt)
    make menuconfig


    You can download a working config.txt file HERE. This is a generic kernel configuration file with all the necessary options turned on for Promise FastTrak and HighPoint HPT RAID systems. You can, of course, modify this to suit your needs either directly in a text editor or by typing make menuconfig as explained above. It is easy to make mistakes if you are editing .config directly in vi or emacs. Therefore, it is recommended to use Menu Interface by typing make menuconfig.

  3. Enable all the following in the kernel statically (NOT as modules):

      Code maturity level options --->
      	[*] Prompt for development and/or incomplete code/drivers
      ATA/IDE/MFM/RLL Support --->
    	<*> ATA/IDE/MFM/RLL Support
    	IDE/ATA/ATAPI Block Devices --->	
    	<*>    Enhanced ATA/IDE/MFM/RLL disk/cdrom/tape/floppy support
    	<*>        Include IDE/ATA-2 Disk Support
    	[*]            Use multi-mode by default
    	<*>        Include IDE/ATAPI CDROM support
    	[*]        Generic PCI IDE chipset support
    	[*]            Sharing PCI IDE interrupt support
    	[*]            Generic PCI Bus master DMA support
    	[*]                Use PCI DMA by default when available
    	[*]            Intel PIIXn chipset support
    	[*]                PIIXn tuning support
    	[*]            Promise PDC202{46|62|65|67|68} support
    	[*]                Special UDMA Feature
    	[*]                Special FastTrak Feature
    	[*]            VIA 82CXXX chipset support
    	<*>    Support for IDE RAID controllers
    	<*>        Support Promise software RAID (Fasttrak(tm))

  4. After you have enabled static features as shown above, make any more changes that you would like to make to suit your environment.

  5. Save the kernel configuration. It is saved to .config in the current directory. Please back up this file. If you dont do so, you will regret it later. Copy .config file in a blank floppy or in /root

  6. Build and install the kernel like you normally do, by typing:

    make dep ; make clean ; make && make install 
    make modules && make modules_install

Look at /etc/lilo.conf to make sure new lines are added to boot your new kernel 2.4.19. Note that there should not be an initrd= line for this new kernel in /etc/lilo.conf. That is, our new kernel will boot itself without depending on a initrd.img unlike your current 2.4.18-3 kernel.

Now adjust /etc/lilo.conf as follows:

  1. Locate the root=/dev/sdaX line for the new kernel in /etc/lilo.conf. Change this to root=/dev/ataraid/d0pX where X is a number 1 through 16. Save your changes.

  2. Type:


  3. If you chose any ext2 partitions during installation, you should comment them out in /etc/fstab for now.(Best thing is: Forget ext2 in this whole process)

  4. Remove all floppies and CDs, and reboot by typing:


  5. At the LILO prompt, type your new kernel lable corresponding to 2.4.19. Your computer should then boot into your new kernel.


    If it does not boot, then insert Boot Floppy disk (which you prepared during installation process) and reboot. Your computer should then boot into your old SCSI emulated RAID configuration using old kernel. Login to your Linux machine and determine your Append Line, see Section 7.2. Then, modify your /etc/lilo.conf to include the Append Line as illustrated in Step 2 of Section 7.2. Finally, activate changes by typing /sbin/lilo and reboot by typing sync;sync;reboot. When you see LILO prompt, type your new kernel lable corresponding to 2.4.19.

  6. Login as root and type df -k to make sure you see /dev/ataraid/d0X entries instead of earlier /dev/sdaX entries.


    You may see some errors related to mounting swap device at the time of booting into new kernel. These are harmless. You should edit /etc/fstab to change any sdaX entries to ataraid/d0pX entries.

  7. Now, connect your computer to Internet and download lilo-22.tar.gz (the latest version of lilo program) from the Internet.

  8. Remove the existing lilo on your computer by typing: rpm -e --nodeps lilo

  9. Install new version of lilo as follows:

    tar xvzf lilo-22.tar.gz
    cd lilo-22	# cd to lilo source directory just created by tar 

  10. Say "Yes" to questions the system will ask you.

  11. Ignore any errors except if /sbin/lilo is not created.

  12. Adjust /etc/lilo.conf as follows:

    • Replace linear by lba32

    • Delete line "compact"

    • Change vga= line to vga=normal

    • Change boot=/dev/sda line to boot=/dev/ataraid/dN (where N is the partition number on which your root file system exists. Type df -k / to find out your root partition number).

    • Make sure that default=linux-2.4.19 (where linux-2.4.19 is the label given to boot your new kernel: 2.4.19)

  13. Save changes to the file and type: /sbin/lilo

  14. Reboot the system and cross your fingers.

Here is what the final /etc/lilo.conf should look like.

If everything comes up without any errors, time to celebrate!!