Changing perc 6 to perc H200 raid Controller

Hi linux specialists,

I like the Almalinux forum. Even for unusual questions there is always a good answer.
Could I ask help in a matter with older hardware.
I have an older Dell T310 server here, it runs almalinux and it seems to be very happy with it.
Over time the default Perc6 raid controller has become really old. And I liked to change it for a Perc200, if that is the best option. However, I worry about a hassle with installation
See, when I installed the server (it was in the centos 8 time before migrating to almalinux)
I had an issue with the perc 6 driver. The perc 6 virtual disk was not recognised by centos 8 and I had to do a trick by adding a driver cd where the centos8 installer could see the right driver which was provided by the ElRepo repository I believe.

Now, when replacing the Perc6 by a H200 controller, I expect driver issues again. If i would insert the 2 drives containing a RAID1 virtual disk in the server and I would import the foreign virtual disk containing the almalinux system, i hope it would boot the almalinux system on it. My worry is that almalinux could hold and prompt for an incorrect driver, or not see the card at all.

Then, how to install in that scenario an older perc H200 driver on an already installed almalinux system? I would really hate to have to reinstall the system only for choosing another raid controller. PS: Note that the ElRepo repository is installed on this active system.
Thanks for any help for this one.

Thanks in advance. Bye. Dirk.

I think you meant ELRepo, not EPEL …

Correct…thanks, I modified the post.

For the perc6 controller, I suppose you have used the kmod-megaraid_sas package from ELRepo.

Regarding the H200 controller, can you confirm this is the right device?

https://pci-ids.ucw.cz/read/PC/1000/0072

If so, you’d need the kmod-mpt3sas package. You can check the device IDs here:

Thanks for these answers.
toracat,

The card had not arrived yet. I can’t lshw hardware and give you the ID.
That is, if I can get in rescue mode and give the commands by then.
The card is a .Perc H200 raid controller card. I need a way to install the driver in almalinux if the system fails to boot, because it doesn’t find the controller and so no boot partition.
The commands I need to give in logical steps to install and change the perc6 for the H200 driver and boot the system. I think problems will occur. Maybe I am wrong. I will update you.

I’d try to boot install media in troubleshoot mode and append

inst.dd=https://elrepo.org/linux/dud/el8/x86_64/dd-mpt3sas-39.100.00.00-1.el8_6.elrepo.iso

to its kernel’s command-line parameters. On regular install mode that definitely loads kernel module from the dud image (and adds to package-list). If that works, then you can chroot into installed sysroot.

How to recreate initramfs-image so that the mpt3sas (or whatever the correct driver is) is included is beyond what I know. Probably dracutsomething

Hi Jlehtone,

Thanks, I didn’t know inst.dd
i found something similar as in your instruction on the net:

https://ahelpme.com/linux/centos-8/centos-8-add-a-storage-driver-megaraid_sas-when-booting-the-installation-disk/

They are using the same command the reach their goal. Only they are installing a fresh system. I think I understand the principle idea to boot an install media and include the driver iso by “inst.dd”.
What I do not quite understand is the part to use chroot. I know chroot is a command to include a different root (my unbootable system with a wrong raid controller driver in example) and treat the chrooted system as if it is the active running system, to be able to change and solve for example driver or grub problems. Then, I would need detailed commands in steps in chroot to do the job. I am not a linux superior yet. Sorry for my noob questions.

There is some good stuff to be found here:
https://docs.centos.org/en-US/8-docs/advanced-install/assembly_updating-drivers-during-installation/

Just the part how to remove the old driver and replace it for the new after mounting by chroot I need. If there is anyone who did a job like this, I would like to learn it. An order of commands…

I am in trouble. Probably I should make an new ticket for this one.
It all took much time to prepare. Right now I have a new RAID1 virtual disk on my new installed perc H200. I cloned the old drive with all partitions that formed my almalinux system to the new RAID1 virtual disk. I end up with a corrupt system.
It boots in dracut mode. From there i am stucked. I used several live usb sticks to see if I can list the hardware ID of the sas H200 card. With commands like:
lspci | grep -i raid
But it doesn’t work. Maybe I should chroot commands first.
To replace the perc6 driver for h200 I still have no solution.
I was thinking of something like this:

mount /dev/(drive here) /mnt
mount -o bind /sys /mnt/sys
mount -o bind /dev /mnt/dev
mount -o bind /proc /mnt/proc
chroot /mnt /bin/bash

To chroot in the system. And find a way to do it from there.

I need help. I don’t know a way to remove the old perc6 driver and install the perc h200
like this. I spent hours to setup that system and it is really frustrating to loose it and start over.
Looking at it, I would say there must be more users having to change a RAID controller and
end up with a situation like this. Anyone?

This ticket is rather old now. I will create a new one if it falls dead.

Ok. I think this ticket is way too old. I open a new one.
Meanwhile I managed to chroot into my system using procedure in the above reply.
When I list SAS like this:
lspci -m | grep -n SAS

It lists the SAS controller:

23:03:00.0 “Serial Attached SCSI controller” “Broadcom / LSI” “SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon]” -r03 “Dell” “PERC H200 Integrated”

So, finally I was able to list the device ID of this card. And this link:
https://pci-ids.ucw.cz/read/PC/1000/0072

Contains the right driver Now all I need is a procedure off commands that could remove the old perc6 driver from the corrupt Almalinux system and replace it for this driver , assuming the commands come from a ‘chrooted’ live usb stick system.
By the way, I use a Debian rescue distribution on usb stick does it matter the host system is not of same distribution as the chrooted system?

With lspci -nn -s 23:03:00.0 ?

Thanks, I didn’t see your reply.

I opened a new ticket:

Sorry, I thought it was dead.

Moment I will try.

update:

jlehtone.

if I do: lspci -nn -s 23:03:00.0

nothing is replied. empty.

Please reply next ticket