We help IT Professionals succeed at work.

How to manually install RAID drivers into XP after the fact?

Medium Priority
2,376 Views
Last Modified: 2012-05-06
Just cloned a single SATA drive with an established XP install on to a RAID stripe set. Clone went well, but as you know, the RAID drivers now need to be installed into the registry through the recovery console. Any tips? Currently, I am not interested in a re-install from scratch...

I have already extracted the appropriate RAID drivers onto a floppy so I can call it with the F6 button.

Thanks for the help!
Comment
Watch Question

Site Reliability Engineer
CERTIFIED EXPERT
Most Valuable Expert 2011
Commented:

The easiest way I find is to do a Repair installation of XP. This allows you to press the F6 button and call the drivers as usual, then just proceed with install and choose the option to Repair your XP install - rather than reinstall it. Much simpler, doesn't involve any command scripting and won't reset settings or cause data loss.

-Matt

Not the solution you were looking for? Getting a personalized solution is easy.

Ask the Experts
Adam LeinssSystems Administrator
CERTIFIED EXPERT
Commented:
I agreed with tigermatt.  This is very, very tricky.  I have done it when I had another system with the same setup running live.  If you look in the INF file, you should see something like this:
PCI\VEN_9005&DEV_809F.DeviceDesc = "Adaptec SCSI HostRAID Controller"
You can then look through the registry of a working system and try to piece it together:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Services\a320raid]
"ImagePath"="system32\\drivers\\a320raid.sys"
"Group"="scsi miniport"
"DisplayName"=""
"Type"=dword:00000001
"ErrorControl"=dword:00000001
"Start"=dword:00000000
"Tag"=dword:00000044
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Services\a320raid\Parameters]
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Services\a320raid\Parameters\Device]
"DriverParameter"="MAXLUNS=8"
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Services\a320raid\Parameters\PnpInterface]
"5"=dword:00000001
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Services\a320raid\Enum]
"0"="PCI\\VEN_9005&DEV_8095&SUBSYS_01681028&REV_10\\4&5855be9&0&20F0"
"Count"=dword:00000002
"NextInstance"=dword:00000002
"1"="PCI\\VEN_9005&DEV_8095&SUBSYS_01681028&REV_10\\4&5855be9&0&21F0"
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_9005&dev_8080]
"ClassGUID"="{4d36e97b-e325-11ce-bfc1-08002be10318}"
"Service"="a320raid"
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_9005&dev_808f]
"ClassGUID"="{4d36e97b-e325-11ce-bfc1-08002be10318}"
"Service"="a320raid"
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_9005&dev_8090]
"ClassGUID"="{4d36e97b-e325-11ce-bfc1-08002be10318}"
"Service"="a320raid"
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_9005&dev_8091]
"ClassGUID"="{4d36e97b-e325-11ce-bfc1-08002be10318}"
"Service"="a320raid"
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_9005&dev_8092]
"ClassGUID"="{4d36e97b-e325-11ce-bfc1-08002be10318}"
"Service"="a320raid"
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_9005&dev_8093]
"ClassGUID"="{4d36e97b-e325-11ce-bfc1-08002be10318}"
"Service"="a320raid"
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_9005&dev_8094]
"ClassGUID"="{4d36e97b-e325-11ce-bfc1-08002be10318}"
"Service"="a320raid"
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_9005&dev_8095]
"ClassGUID"="{4d36e97b-e325-11ce-bfc1-08002be10318}"
"Service"="a320raid"
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_9005&dev_8096]
"ClassGUID"="{4d36e97b-e325-11ce-bfc1-08002be10318}"
"Service"="a320raid"
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_9005&dev_8097]
"ClassGUID"="{4d36e97b-e325-11ce-bfc1-08002be10318}"
"Service"="a320raid"
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_9005&dev_809c]
"ClassGUID"="{4d36e97b-e325-11ce-bfc1-08002be10318}"
"Service"="a320raid"
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_9005&dev_809d]
"ClassGUID"="{4d36e97b-e325-11ce-bfc1-08002be10318}"
"Service"="a320raid"
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_9005&dev_809e]
"ClassGUID"="{4d36e97b-e325-11ce-bfc1-08002be10318}"
"Service"="a320raid"
[HKEY_LOCAL_MACHINE\aaaa\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_9005&dev_809f]
"ClassGUID"="{4d36e97b-e325-11ce-bfc1-08002be10318}"
"Service"="a320raid"

 After loading the registry of the non-booting system's HKLM as "aaaa", I was able to get it to boot by importing the above and copying over the sys file.
However, without a system with the same setup, a repair is your best option

Author

Commented:
My initial attempt at a repair installation has failed, so my next plan (in effect now) is to reinstall fresh onto the RAID set, and manually export the registry keys and driver files to a flash drive.  Then, I can reinstall the single drive, patch in the changes, and then attempt cloning again.  I have used n-lite to slipstream in the RAID drivers so I can skip the F6 in the future.  Formatting as we speak...

Author

Commented:
So close, yet so far...  I did a quick install onto the RAID set.  I looked up the device class descriptions in the device manager, and sought out the corresponding registry entries and exported them.  All 19 or so of them.  I then copied the iastor.sys and the registry exports to a flash drive and shut down to replace the hard drives.  So, back on the original drive, I have copied over the sys driver and merged all but 6 of the registry entries.  The 6 that won't go error out with a "Cannot import...: Error accessing the registry." message.  These entries mostly pertain to the keys:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\PCI\VEN_8086&DEV_24DF&SUBSYS_524C8086&REV_02]

and

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\IDE\DiskRaid_0_Volume0.1.12_U]

Now, I do have the original .INF generated by Intel's F6 textmode driver diskette.  Does anyone have some insight into manipulating the .INF file to install correctly other than during the text portion of the install?

Without the last 6 registry entries, the iastor.sys driver is not being loaded during bootup as evidenced by me watching the drivers list scroll by when the "/sos" switch has been added to the boot.ini file.

Is there a way to force the loading of the iastor.sys file by any means?

Thanks again.
tigermattSite Reliability Engineer
CERTIFIED EXPERT
Most Valuable Expert 2011

Commented:

Sorry, I've never tried this method so can't really comment further. I'll see if the Moderators can get some more Experts in here.

-Matt
Adam LeinssSystems Administrator
CERTIFIED EXPERT

Commented:
Did you try loading the reg file offline?  You should be able to boot either with WinPE and run regedit or place the disks in another system, then load the registry as a hive in offline mode.  The keys might be locked by the OS because they are in use.
Loading a registry as a hive: http://technet.microsoft.com/en-us/library/cc759303.aspx
Adam LeinssSystems Administrator
CERTIFIED EXPERT

Commented:
Oh, whatever name you give the hive, you'll need to change your reg file to the same.  In my case, I picked "aaaa" as given above.
Commented:
Did you try installing RAID drivers on single drive prior to cloning to RAID array?
Access more of Experts Exchange with a free account
Thanks for using Experts Exchange.

Create a free account to continue.

Limited access with a free account allows you to:

  • View three pieces of content (articles, solutions, posts, and videos)
  • Ask the experts questions (counted toward content limit)
  • Customize your dashboard and profile

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.