Source
In RHEL 7.x this is a bit different as modprobe.conf doesn't exist.
In my case I needed to change the controller for the root disk from Paravirtual to LSI Logic SAS. As the previous posts suggest, this needs to be done in two places, the regular disk and the RamDisk as both will need to boot with the new driver.
First, if possible, clone your machine, don't snapshot it. Whenever you are working with disks, it's best not to involve snapshots. You may not need to do this second step, I did it in the theory that the disk controller would initialize itself if introduced to the system through an additional disk, just like you'd do for Windows: Second step - Shut down your VM, Attach a 1 GB disk using the SCSI controller type you'd like to change your root disk to and bring the system back up to modprobe discover it. (You might be able to do this hot) Third step - run the following command to add the correct driver to the RamDisk (Remember in my case I was moving from the VMWare Paravirtual to the LSI Logic SAS driver. It's likely you are going the opposite way, but you just need to change the driver type: dracut -f -v --add-drivers mptsas
Other options for drivers are: mptspi mptscsih mptbase
After doing this, shut down and remove the 1 GB temporary disk. Change the controller for the root disk to whatever driver you just added to the ramdisk, and boot up the system.
In my case I needed to change the controller for the root disk from Paravirtual to LSI Logic SAS. As the previous posts suggest, this needs to be done in two places, the regular disk and the RamDisk as both will need to boot with the new driver.
First, if possible, clone your machine, don't snapshot it. Whenever you are working with disks, it's best not to involve snapshots. You may not need to do this second step, I did it in the theory that the disk controller would initialize itself if introduced to the system through an additional disk, just like you'd do for Windows: Second step - Shut down your VM, Attach a 1 GB disk using the SCSI controller type you'd like to change your root disk to and bring the system back up to modprobe discover it. (You might be able to do this hot) Third step - run the following command to add the correct driver to the RamDisk (Remember in my case I was moving from the VMWare Paravirtual to the LSI Logic SAS driver. It's likely you are going the opposite way, but you just need to change the driver type: dracut -f -v --add-drivers mptsas
Other options for drivers are: mptspi mptscsih mptbase
After doing this, shut down and remove the 1 GB temporary disk. Change the controller for the root disk to whatever driver you just added to the ramdisk, and boot up the system.