RedHat installation kernel mods possible?

I am trying to install redhat on a new computer (equipped with Adaptec 2940 and a U2W SCSI drive (Seagate Cheetah, 19 GB).

The problem I am running into is that the old 2940 driver module doesn't work correctly with the U2W drive (causes hangs), however the latest kernel patch for this driver takes care of the problem.

The problem is that the bootimage and supplemental image from Redhat 5.1 don't contain this kernel patch, so invariably I experience hangs during the installation.

My question:

is it possible to patch the RedHat installation kernel somehow, or are there updates available? The latest patch is quite recent, just a few days old. I have a kernel available that works very well with this hardware configuration. Can I somehow use it to install Linux, and what steps are required to make it work with the installation disk?

Thanks for any help!
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

aml61Connect With a Mentor Commented:
1. If you really want to modify the disk, all you have to do is dump the kernel onto the disk. The boot disks are msdos formatted anyways.
2. Why would you really want to do that anyways when you can download predone disks? You can get them from the following:
<>. The current writer of the aic7xxx driver has packaged a few boot disks for both RedHat and SUSE.
I had a similar situation with an DPT 2144UW hardware RAID controller. It wasn't a patchlevel problem, it was just that the Redhat installer didn't have a driver on the CD. I was able to resolve it by loading the driver from a floppy at the appropriate moment in the installation.

So I have two answers for you:

Answer #1. Red Hat 5.2 is about to come out. (Less than 30 days away from retail shelves is what I've heard.) Put the problem on the shelf for a few weeks, 5.2 will probably include the patch, and you save yourself the need for an upgrade later.

Answer #2. Given that answer #1 is almost certainly not good enough :-), you can try to do what I did. I don't remember the exact steps involved, but here's the basic plan:

1. Beg, borrow or steal another Linux machine running the same version of RedHat that you want to run on the target machine.

2. Install the kernel source, and install the 2940 driver patch. Make sure you are compiling against the same kernel source from the RedHat .srpms so that the kernel you build is otherwise identical to what's on the installation CDs. Do a "make modules."

3. Copy the newly-created module file for the 2940 to a floppy disk or whatever.

4. Boot the RedHat install on the target machine. (It's easier, if your BIOS supports it, to boot directly from the CD, because then the floppy drive isn't so tied up by the installer.)

5. As soon as you get into "Stage 2 Install", use the Alt-Fn keys to switch virtual consoles to the one with a bash# prompt. (I can't remember if it's Alt-F2 or Alt-F3.)

6. Mount the floppy, copy the driver file to /tmp or wherever, and do an insmod 2940.o (or whatever the driver filename is).

7. Continue the RedHat install, and when it asks for SCSI drivers to install, just skip that step. (Or otherwise do whatever you have to to fake it out.)

Good luck...

demelerAuthor Commented:
Thanks for the comment, I can see how either might lead to the
desired result, however, I don't have access to a redhat machine.
I do, however, have a kernel that works - aic7xxx support is
compiled into the kernel. I would like to copy the kernel onto
the installation disk so it is used instead of the existing kernel on the redhat install disk. Do you know how to do that?

If I would use your approach #2, I am worried that the kernel
symbols wouldn't match mine. The patch I have is for 2.0.35
only and I am not sure if the redhat kernel wouldn't check if
the modules matched their kernel versions and thus reject my patched module. If the kernel versions are checked, it wouldn't

So I guess short of waiting a month I think my only hope is to directly replace the kernel on the boot disk with my own. Can you give me the steps for doing that?

Thanks, -b.d-
All Courses

From novice to tech pro — start learning today.