Let's say that you have an PowerEdge 2950 with a PERC5/i controller, that you want to install Windows Small Business 2003 R2. If you made the assumption of R2 having the PERC5/i drivers, you'd have made the same mistake as I made. Sadly, R2 does not have the drivers you're looking for. You'll also be pleased to know that it also doesn't have your Broadcom drivers either (but we'll address this later). On a side note, the 2950 has no floppy, and the Windows installer doesn't give a damn about your USB key / drive when you're talking about specifying additional drivers. You are obviously not going to be installing from the canned W2K3SB-R2 disk.
Next up, Dell provides an "Installation and Management ISO" for installing Windows on your 2950... Let's spin this up and see what it's all about...
This is great stuff... if only it supported Small Business. Damn. Time to break out the rubber gloves, lock pick, and hand grenades.
To start off, I have purchased my own copy of MagicISO and know a little bit about breaking into install disks. I'm not saying you have to use MagicISO or even need to know much about making your own OEM installation disks... just keep reading.
Once you have an ISO vibrator and adequate massage oils, you'll need to make an ISO of your Windows 2003 Small Business Server installation disk. Open up your ISO you just made and at the root of the image, create a folder named "$OEM$" then create a folder inside $OEM$ named "$1" and finally create a folder that you would like to have transfered to the root of your installation drive (C:\ by default). It should look something like this:
Next you'll need to download your unsupported drivers from wherever they might live. For the 2950's PERC5/i look no further than Dell's support and download site.
Unpack all the drivers you're wanting to include support in your custom ISO install... put them in folders as per your inner most desires see fit and then add them to your ISO image \$OEM$\$1\DRIVERS\RAID... Also, copy the files into the I386 directory of your installation ISO. It should look something like this:
The next part is where you're going to need either the lock-pick or the hand grenades... if you don't do this part right, you'll feel like blowing something up.
Let's address the easy file first. Here's a link to my WINNT.SIF which you will modify and put in your \I386 directory. This should be relatively self explanatory, with exception of the one line: ' OemPnPDriversPath="DRIVERS\RAID" ' You will need to make sure this is the correct driver folder name... (remember up above, you made the \$OEM$\$1\DRIVERS\YOURDRIVER directory tree and dumped a bunch of drivers in there?) Modify this file as you see fit for your own installation, save it, and let's move on to the fun part.
There is a file in the \I386 directory named "TXTSETUP.SIF" yes? You found it? Good, now copy it and make 2 backups just in you run into the rare event where you'll want a back up of the back up of the original... you see where I'm going with this?
There are four sections we have interest in that reside in this file (for our RAID drivers that is):
[SourceDisksFiles]
[HardwareIdsDatabase]
[SCSI.Load]
[SCSI]
Start by finding the first "[SourceDisksFiles]" and add the name of your driver, with some installation and driver information... long story short, just dump the name of your driver with what I have here because I don't remember what all the parameters mean (3AM coffee fueled creativity and research rarely results in long-term memory commitment) and this worked. My added line looked like this:
percsas.sys = 1,,,,,,_x,4,1
Next, find the first instance of "[HardwareIdsDatabase]" and add (now here's some of the fun part) a modified portion of your driver's txtsetup.oem "HardwareIds...." section.
My UNMODIFIED lines looked like this:
id = "PCI\VEN_1028&DEV_0015&SUBSYS_1F011028", "percsas"
id = "PCI\VEN_1028&DEV_0015&SUBSYS_1F021028", "percsas"
id = "PCI\VEN_1028&DEV_0015&SUBSYS_1F031028", "percsas"
What we are adding to the first instance of "[HardwareIdsDatabase]" looks like this:
PCI\VEN_1028&DEV_0015&SUBSYS_1F011028 = "percsas"
PCI\VEN_1028&DEV_0015&SUBSYS_1F021028 = "percsas"
PCI\VEN_1028&DEV_0015&SUBSYS_1F031028 = "percsas"
See the similarity?
Let's move on to the next section we need to modify, "[SCSI.Load]" Find this section and add a line under it with the HardwareIdsDatabase ID and the name of the driver with a load parameter of 4. Mine looked like this:
percsas = percsas.sys,4
We're almost done with the delicate stuff... Lastly, find the "[SCSI]" section and add the HardwareIdsDatabase ID with a name... you could use whatever name you really wanted but mine was stripped from my txtsetup.oem file provided with the driver. Here's what my line looked like:
percsas = "DELL PERC5 RAID Controller Driver (Server 2003 32-bit)"
Here's a link to my original TXTSETUP.SIF and my modified TXTSETUP.SIF. I recommend you use something like WinMerge to compare the two...
Save your ISO and burn it... you now have a self customized installation disk that will load up your unsupported RAID drivers.
If you have further questions, the only real witness to this voodoo was an always draining coffee mug and my ever restless Weimaraner, Boreas. Boreas can be reached via barkmail:neuteredweim@hotbark.com
No comments:
Post a Comment