[CentOS] Making Driver Disks

Sun Aug 7 23:13:11 UTC 2005
William <wlist-centos at kimballstuff.com>

List,

I have attempted to make my own megaraid driver disk for a Dell 
PowerEdge 2300.  The procedure I'm using is detailed at the end of this 
message.  In short, I followed samples that I collected after Googling 
around.  The problem I face is that the CentOS 4 installer can't seem to 
mount the driver disk after I have created it.  It gives no information 
other than, "Cannot mount /dev/fd0", so I don't know where to look to 
troubleshoot this.

If there is a documented procedure for creating good driver disks for 
CentOS 4, I would very much like to read them; I simply haven't been 
able to find any, yet.  Otherwise, please review the procedure I have 
detailed in this message to spot the flaw.  Thanks!!

The procedure I have used to create this driver disk is as follows:

## Log into a machine that is running the 2.6.9-11.EL kernel (e.g.:  a 
working CentOS 4 box).
# yum install kernel-devel

## Download the megaraid source from the ALMOST useful (doesn't work 
because we can't seem to Alt+F2 to get to a bash shell, as described):  
http://www.tuxyturvy.com/blog/index.php?/archives/4-Installing-RHEL4-on-Systems-with-Legacy-Megaraid-Drivers.html
# cd /usr/src
# wget http://www.tuxyturvy.com/files/megaraid.tar.bz2

# mkdir /usr/src/megaraid
# mkdir /usr/src/megaraid/dd
# mkdir /usr/src/megaraid/dd/modules
# mkdir /usr/src/megaraid/dd/modules/2.6.9-11.EL
# mkdir /usr/src/megaraid/dd/modules/2.6.9-11.ELhugemem
# mkdir /usr/src/megaraid/dd/modules/2.6.9-11.ELsmp

# cd /usr/src/megaraid
# tar jxvfp /usr/src/megaraid.tar.bz2

## Ignore all warnings.
# make -C /lib/modules/2.6.9-11.EL/build SUBDIRS=/usr/src/megaraid modules
# cp megaraid.o dd/modules/2.6.9-11.EL/
# rm -f *.o *.ko

## Ignore all warnings.
# make -C /lib/modules/2.6.9-11.ELhugemem/build 
SUBDIRS=/usr/src/megaraid modules
# cp megaraid.o dd/modules/2.6.9-11.ELhugemem/
# rm -f *.o *.ko

## Ignore all warnings.
# make -C /lib/modules/2.6.9-11.ELsmp/build SUBDIRS=/usr/src/megaraid 
modules
# cp megaraid.o dd/modules/2.6.9-11.ELsmp/
# rm -f *.o *.ko

# cd dd/modules/
# find . -type f | cpio -o -H crc | gzip -n9 > ../modules.cgz
# cd ..
# rm -rf modules/

# echo "LSI MegaRAID driver disk for CentOS 4.0" > centos-4

# vim modinfo
---- add ----
Version 0
megaraid
 scsi
 "LSI MegaRAID for Legacy Dell PowerEdge Servers"
-------------

# vim pcitable
---- add ----
0x101e 0x1960 "megaraid" "AMI|MegaRAID (OEM)"
0x101e 0x9010 "megaraid" "AMI|MegaRAID"
0x101e 0x9060 "megaraid" "AMI|MegaRAID"
0x8086 0x1960 "megaraid" "AMI|Megaraid"
-------------

# touch modules.dep
# chmod 0755 *

## Insert a floppy disk into your floppy disk drive.
# fdformat -n /dev/fd0u1440
# mkfs -t ext3 /dev/fd0u1440
# mount /dev/fd0u1440 /media/floppy
# rm -rf /media/floppy/*
# cp * /media/floppy/
# umount /media/floppy

## Done making the Driver Disk.
## Insert disk 1 of the CentOS 4 install set into your Dell PowerEdge 
box and reboot the machine.
## At the CentOS 4 install prompt, insert the Driver Disk into the 
machine and type:
 > linux dd

## Error:  Cannot mount /dev/fd0 ?!