Menu

Addendum

Juan Jose Pablos

Last modified 5 years ago Last modified on 02/01/10 13:29:51

A Windows Server Administrators first experience with getting BTS_Driver Packs to install using the Unattended installer package to work.

I first ran across the unattended install system a few weeks ago. I was looking at a way to streamline the install process and free up some of my time. As we all know in system administration, you never have enough time to get everything done that needs to be done in a day. In our environment we rebuild all units that come out of the box with an operating system. Nothing is done from the factory install for security purposes. We also have a requirement that all machines must be up to current patch and AV levels before they hit the production network. Previously a typical install process would be as follows.

Install OS w/ slipstreamed SP2

Install Drivers

Install Office 2003

Install Patches using Autopatcher with Office Service Pack 3 (​http://www.autopatcher.com)

Install Company Customized Applications (calendar, email, web browser, etc.)

Install General Applications (java, quicktime, flash, etc.)

Install AV software and current AV updates.

Once this was all done then finalize the machine by completing a series of tweaks, creating shortcuts, and other various fixes.

As you can see this process can be time consuming and admin resource intensive. I had to be availible to begin the processes and complete the steps required to build the machine. If I got called out for any reason the whole process came to a stand still until I got back to resume where I left off. So I started to search for a better way to complete some of this monotonous task.

After searching for several ways to do this I came across Unattended (​http://unattended.sourceforge.net) and read up on the system and figured what's a couple of hours to work on trying this out if it's going to save me lots of hours in the long run. So I set out to build an Unattended server. I'm not going to go into the specifics of this portion of the build as it's fairly well documented on the website. During testing everything worked just like it should have, until I came across a test machine that I had sitting in my office that was not supported with the base OS drivers (nvidea chipset and LAN drivers). Then everything came to a screeching halt.

In comes BTS_Drivers (​http://www.driverpacks.net)

As I was reading the Unattended website, I came across the BTS_Drivers WIKI page. I started reading this with the intent to use this to install the drivers into the installation package and overcome my unsupported drivers on my test system. As I read the page it all looked failrly easy to get implimented, so I set out to get this going.

Now please keep in mind I'm a Windows Administrator in a Windows enviornment. What looked easy ended up taking over a week to get going properly. But in the end, if it's done correctly should only take about and hour or less to get setup.

Here's my process:

Create your install point for your OS and follow the folder strucuture:

-Install

OS

XP-sp2

I386

$OEM$

This was where I was making my mistake, I was reading about the setup from several different sources and everything pointed to setting up the folder structure slightly differently with a folder called $OEM and a subfolder called $, So I was doing just that, and it would look as if it was working until I got to the GUI portion of the install, then it would bomb out because the install couldn't find the required files to complete the installation. Apperantly in the NIX world the folder structure works as is should. After batting my head around for the better part of a week I finally ran across an article that pointed me in the right direction. From this article I was directed to the Microsoft site to a reference on creating a distribution folder (​http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/prork/prbc_cai_pwue.mspx?mfr=true) which lead me to the answer to my problem.

Once the folder structure issue was resolved and following the directions listed, I was able to get the process to work as it should.

So here are my instructions for getting integrated BTS_Drivers setup with Unattended:

Requirements:

7Zip (​http://www.7zip.org)

Driverfiles.zip (see below)

BTS_Driver Packs (see below)

  1. Create your OS install point
  2. Create a folder called $OEM$ under the \I386 folder
  3. Download Driverfiles.zip from ​http://www.msfn.org/board/lofiversion/index.php/t51406.html, look in the first post towards the bottom, you'll see the links for the Download from mirrors. This is what you want.
  4. Extract the Driverfiles.zip to the \$OEM$ folder that you created in step 2
  5. Unfortunately, unattended uses winnt to launch windows setup, which means files are copied from $OEM$ in the 8.3 filename format, which means we must edit a few things. Rename the (now extracted) SetupCopyOEMInf.exe to setupinf.exe and rename WatchDriverSigningPolicy?.exe to watchdrv.exe , then edit the Drivers.cmd file to match the changes that you just made.
  6. Download any required Driver Packs from ​http://www.driverpacks.net
  7. Now extract the driver packs using 7zip, extract any packs that you need. (individual packs)
  8. Now create a new 7zip file called drivers.7z and recompress the packs that you just decompressed in step 7 (combined pack)
  9. Copy the newly created drivers.7z to the \$OEM$ folder.
  10. Make the required edits to the unattended.txt file, located in the \lib folder of the unattended install (see below)

[Unattended]

OemPreinstall?=Yes

[GuiUnattended?]

DetachedProgram? = cmd.exe

Arguments = "/Q /C FOR /F %? IN ('FINDSTR/B dospath= %SYSTEMROOT%\SYSTEM32\$WINNT$.INF') DO (SET %?\&& CALL START /MIN %dospath:
=\%$OEM$\Drivers.cmd)"

(The Arguments = "..." is all one line.) Please note this does not work for any MassStorage? Device - in textmode. Since this runs in the gui part of windows setup, windows needs access to the sata drivers before this runs, which means you must have textmode drivers for your sata drives. To add Mass Storage textmode drivers (including SATA drivers) you can use Bashrat's DriverPack? Base MassStorage? Textmode method, or use nLite , or any other method ( such as manually editing txtsetup.inf ) This has been tested on 366Mhz machines through to 3Ghz machines and all worked, so the ticker pause/resume of windows setup seems to work fine on both slow and fast machines.

Many thanks to all who worked on this and all credit goes out to those who developed this system, I'm just documenting my experience so others can follow along with ease and not have to deal with the problems that I encountered.


Related

Wiki: BTSDriverPacks