Redhat – How to add a DUD driver to CentOS/RHEL 7 media (without network)

centos7kickstartredhatrhel7

I'm working on making an offline installer for something I currently build using PXE and RHEL 7. The servers concerned (Dell 14G) need an addition driver loaded for the RAID controller. In the PXE version, I can add dd=http://somehost/blah.iso to the kernel parameters to load additional drivers at boot time. How do you do the same with local media?

I've got a script that lets me rebuild the ISO with additional content (from here: https://github.com/RedHatGov/ssg-el7-kickstart )

It works as it stands. I am planning to just rip out the 'payload' security hardening stuff and put in my existing kickstart script from the PXE install.

However, if I just put the RAID DUD iso on the disk, and add dd=cdrom:/megaraid_sas-07.700.52.00_el7.X-2.x86_64.iso to the boot parameters, the installer hangs, saying "Kickstart loaded. Please re-insert installation media". It actually flashes up that message briefly during a normal installation too, so I'm not certain that it's actually relevant.

I can't find much information on using dd= (or inst.dd=) with a local file instead of a URL… is it possible? What's the secret? If I just specify inst.dd with no params (to get the interactive mode), then choose my cdrom /dev/sr0, then it doesn't detect the driver iso (I think it's expecting the whole CD to be the content of that ISO instead of the installer disk)

Best Answer

It seems to me the easiest method would be to put the driver disk contents onto a USB stick.

Copy the contents of the ISO image to the top level directory of a USB stick, change the USB drive's volume label to OEMDRV, and boot the server with both the installation media and this USB stick inserted. The RHEL installer will automatically find the drivers on the disk and load the appropriate driver.

The RHEL documentation explains this in slightly more detail and gives a couple of other alternatives.