Linuxdoc Linux Questions
Click here to ask our community of linux experts!
Custom Search

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. Go to www.kernel.org and download latest kernel 2.4.18.tar.gz.

  2. Configure your kernel:

    cd /usr/src/ 
    tar xvzf linux-2.4.18.tar.gz 
    cd linux                 # 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
    
    Note NOTE
     

    You can download a working config.txt file HERE. 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):

      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 FastTrack Feature
                    [*] VIA 82CXXX chipset support
                    <*> Support for IDE RAID controllers
                            <*> Support Promise Software RAID (fasttrack)
    
  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.18. 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.7-10 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:

    /sbin/lilo
    
  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:

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

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

    Note NOTE
     

    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 
    ./QuickInst.sh 
    
  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.18 (where linux-2.4.18 is the label given to boot your new kernel: 2.4.18)

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

  14. Reboot the system and cross your fingers.

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

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