Hardware last longer than Hardware support. My lab has 3 Dell R610s, which have old disk controllers…too old for RHEL 8. Dell is no longer supporting the Hardware, which means that the latest versions of RHEL do not ship with the drivers needed to install.
The R610 needs the driver for sas: mptsas
I was able to get a driver disk from the EL repo here: https://elrepo.org/linux/dud/el8/x86_64/dd-mptsas-3.04.20-3.el8_2.elrepo.iso
When you perform a manual install, you should see a spot early on in the install process that asks you if you want to add a driver disk.
What is a driver disk? Format-wise, it is ISO file, designed to burn to DVD (hey that was the rage when disks ruled the stage). Inside, it has additional Kernel modules for specific hardware. Let’s mount it loopback and take a look. Here is my /etc/fstab entry
/var/lib/libvirt/images/dd-mptsas-3.04.20-3.el8_2.elrepo.iso /var/www/html/dd-mptsas-3.04.20-3.el8_2 iso9660 loop,ro 0 0What is inside that ISO file? It is a Yum Repo.
# cd /var/www/html/dd-mptsas-3.04.20-3.el8_2/ # find . -print . ./rhdd3 ./rpms ./rpms/x86_64 ./rpms/x86_64/kmod-mptsas-3.04.20-3.el8_2.elrepo.x86_64.rpm ./rpms/x86_64/repodata ./rpms/x86_64/repodata/1c40c084286da9b6bf0844f2adfbfd821825923b101f4911c09bd4dd49532cfc-filelists.xml.gz ./rpms/x86_64/repodata/32853cacc346d1cf4a09e5ce21d26b398654c4e73d1d8945a8ceb538dcfb5a4c-filelists.sqlite.bz2 ./rpms/x86_64/repodata/39050c18d0774082851ef1fcb0958212efe3f28e5392a1faaba5ae76d48d9190-primary.xml.gz ./rpms/x86_64/repodata/4d081f4ae49c64e92046c4fd959ae673dbc23ffc172f441d9dba7cdeb7da720d-primary.sqlite.bz2 ./rpms/x86_64/repodata/9ae94c56bee7cf70636cb5c736018aade8440abe3bea6661b0463d928a2a0358-other.sqlite.bz2 ./rpms/x86_64/repodata/e9262d76318e62d569aaa1f450e56bd7abdfe7b79f010c421ad7a3bd44522ffe-other.xml.gz ./rpms/x86_64/repodata/repomd.xml ./src ./src/kmod-mptsas-3.04.20-3.el8_2.elrepo.src.rpm |
For the install, we know which driver is required, so we can provide that to the Kernel command line via the inst.dd key/value. I use this value for the Dell PowerEdge r610 Machines I have.
inst.dd=http://192.168.122.1/dd-mptsas-3.04.20-3.el8_2/rpms/x86_64/kmod-mptsas-3.04.20-3.el8_2.elrepo.x86_64.rpm |
And here is my /var/lib/tftpboot/pxelinux/pxelinux.cfg/rhel8.2-r61
timeout 10 display boot82.msg default 1 prompt 1 label 1 menu label ^Install Red Hat Enterprise Linux 8.1 kernel rhel82/vmlinuz append initrd=rhel82/initrd.img showopts method=http://192.168.122.1/rhel8.2 ks=http://192.168.122.1/kickstart/rhel8.2.r610.conf inst.dd=http://192.168.122.1/dd-mptsas-3.04.20-3.el8_2/rpms/x86_64/kmod-mptsas-3.04.20-3.el8_2.elrepo.x86_64.rpm ip=dhcp net.ifnames=0 biosdevname=0 menu end |
By itself, the PXE infrastructure won’t pick up this change. I symlink the MAC-addressed based filename to this implementation.
# ls -la /var/lib/tftpboot/pxelinux/pxelinux.cfg/ total 80 drwxr-xr-x. 2 root root 4096 Jun 22 16:06 . drwxr-xr-x. 6 root root 175 Jun 22 12:22 .. lrwxrwxrwx. 1 root root 12 Jun 22 11:58 01-00-21-9b-93-d0-90 -> rhel8.2-r610 lrwxrwxrwx. 1 root root 12 Jun 22 11:57 01-00-21-9b-98-a3-1f -> rhel8.2-r610 lrwxrwxrwx. 1 root root 12 Jun 22 11:59 01-00-21-9b-9b-c4-21 -> rhel8.2-r610 lrwxrwxrwx. 1 root root 11 Jun 19 17:34 01-52-54-00-29-0b-bf -> rhel8.1-kvm lrwxrwxrwx. 1 root root 11 Jun 19 17:33 01-52-54-00-2d-74-f1 -> rhel7.8-kvm -rw-r--r--. 1 root root 312 Jun 19 17:28 rhel7.8-kvm -rw-r--r--. 1 root root 313 Jun 19 20:15 rhel7.8-r610 -rw-r--r--. 1 root root 427 Jun 22 16:06 rhel8.2-r610 |
This Article walks you through the process; There are comparable articles for CentOS out there that will outline a similar approach.