Centos 8.1 installer cannot see SAS disks attached to Perc 6/i

How to get Centos 8.1 installer to see Perc 6/i attached SAS disks?

The Dell t7400 hardware boots MS-Windows properly from Perc 6/i attached SAS disks. Dell Bios A11 shows 3 virtual drives at initialization.

There are four 285gb disks attached to the Perc 6/1 of which disks 0+1 are Raid-1 and are bootable and boot MS-Windows (i.e. 3 VDs).

The other 2 disks are raid0 and I want to install linux on the 3rd / 4th disks and use grub to dual boot.

Centos 8.1 is on usb-pen-drive from which I boot, but it cannot see any of the 4 SAS drives for the "installation destination".

Perc 6/i has bios 6.2.0-0013 and firmware 1.22.02-0612, bios controller is enabled and vd 0 is bootable.

While Centos 8.1 cannot see these Perc 6/i attached disks, if I boot the Ubuntu 20.04 installer it sees all of the SAS disks attached to the Perc 6/i controller.

Suggestions?


Solution 1:

From Ubuntu, the lspci -nn shows: LSI MegaRAID SAS 1078 [1000:0060] and the kern.log mentions Avago SAS based MegaRAID driver .

The command udevadm info -a -n /dev/sdc1 | grep -oP 'DRIVERS?=="\K[^"]+' reports megaraid_sas.

RedHat (now owned by IBM) made a commercial decision for RHEL8 to remove support for old RAID adapters and documented that decision in "11.2 Removed adapters":

The Dell Perc 6/i is a rebadged MegaRAID adapter, and is one of the removed adapters, according to the above RHEL8 link, as: SAS1078R, PCI ID 0x1000:0x0060

Found this long thread on access.redhat.com which explains a lot, including an effective workaround that side-loads the driver (for the removed adapter) as part of a Driver-Update-Disk during installation.

Helpful video . Many thanks to the helpful man who made the original thread and also the video, and to Akemi Yagi who provided the workaround drivers.

Note also that:

  • Ubuntu 20.04 LTS supports this old RAID adapter, at least for the moment, without needing to run a tainted kernel.

  • Oracle 'Unbreakable Enterprise Kernel (UEK) also has support for old megaraid adapters without needing to run a tainted kernel.

  • The previous version RHEL 7.x still includes support for many old RAID adapters although it deprecated them.

Solution 2:

This is likely a driver/config issue.

Validate which driver module is used in Ubuntu, see dmesg, lsmod, lsusb, lspci, pcimodules, usbmodules or something like https://unix.stackexchange.com/questions/97676/how-to-find-the-driver-module-associated-with-a-device-on-linux

Then verify if the driver is available in Centos 8.1, e.g. use find on /lib/modules or verify kernel config in /boot.

Once you know the driver state you can investigate either at the driver parameters or take actions to get the driver included/loaded.

Likely causes are:

  • Different kernel versions.
  • Different kernel configurations.
  • Different driver parameters.
  • Missing or not installed driver firmware.