Subscribe to Windows IT Pro
August 20, 2002 12:00 AM

Slipstreaming Service Packs and Hotfixes

If you can manage the tedious process, the rewards are worthwhile
Windows IT Pro
InstantDoc ID #26111
Rating: (0)

One file type that you'll find—but for which you won't encounter matching files in the \i386 directory or in any .cab file—is catalog files. Catalog files, which are identified by the .cat extension, handle driver signing. The sp3.cat file contains the checksums for driver files that have passed Windows Hardware Quality Labs (WHQL) testing. When Microsoft updates a driver, the company must distribute a new signed catalog file.

If you look closely, you'll notice that each hotfix contains either an updated sp3.cat file (or sp4.cat for SP4, and so on) or a catalog file with a name based on the hotfix's Q-number. When you copy sp3.cat files, you must locate the most recent version of the file and copy it to the \i386 directory. Because catalog files are cumulative, the newest and largest file will be the safest bet. Copy the newest catalog file to the \i386 directory and make note of the copied filenames because you'll use those filenames later.

Next, create a path named \$OEM$\$$\hotfixes at the root of your distribution directory. Copy the hotfix installation programs to this directory. Note that this directory is at the same level as the \i386 directory—not a subdirectory, as some Microsoft documentation states. When you run setup, the system copies the \hotfixes subdirectory to the \%systemroot% directory (e.g., C:\winnt\hotfixes). After you copy all hotfixes to that directory, download qchain.exe from http://support.microsoft.com/default.aspx?scid=kb;en-us;q296861 and place it in the same directory.

The final step is to modify the svcpack.inf file so that it contains data similar to that which Figure 2 shows. Under [ProductCatalogsToInstall], you should modify the list to reflect the catalog files that you previously copied to the \i386 directory.

If you followed all the instructions correctly, you now have a master distribution that contains all the service pack files plus any post­service pack hotfixes. If you ever add or reinstall a system component, you can be sure that your system will always use the latest files.

Building Winnt.sif
I always recommend installing Win2K as a minimal installation and adding components and services one at a time as you need them. For example, if you're setting up a Web server, start with a basic installation, then add IIS Web services. After you have IIS running and properly secured, you can add additional services, such as SMTP and DNS services, one at a time.

To start with a totally clean installation, you'll need to use a special file named winnt.sif. This file is identical to any unattend.txt file, but what makes it special is that when you name it winnt.sif and place it in the \i386 directory, it runs automatically, even when you're installing from a bootable CD-ROM. The key to trimming down your Win2K installation is through the winnt.sif file's [Components] section. This section lets you disable components that you don't need. To disable everything, modify the winnt.sif's [Components] section as Figure 3 shows.

Earlier, you only copied files from the hotfixes; you didn't update any registry entries. Therefore, some tools (e.g., Windows Update) will report the hotfixes as not installed. To ensure that the system properly installs all hotfixes—beyond simply copying files—you need to run the hotfixes during installation. The best way to do so is to use the winnt.sif file's [GuiRunOnce] section. You copied all the hotfixes to the \%systemroot%\hotfixes directory, so be sure to point all commands to run from that directory. Figure 4 shows a sample [GuiRunOnce] section. Note the final call to qchain.exe, which ensures that the system copies the proper files when you're installing multiple hotfixes, regardless of the order in which you install them.

Go ahead and make any other customizations you want to the winnt.sif file. Then, save it in your distribution's \i386 directory.

Making a Bootable CD-ROM
You'll find various documented methods for building bootable Win2K CD-ROMs. But the method I find the easiest is using WinISO Computing's WinISO shareware program. WinISO lets you extract an image from a CD-ROM and save it to an image file called an ISO. Open WinISO and select Make ISO from CDROM from the Actions menu. Create an ISO from the Win2K CD-ROM, and save it to a file. Next, open that file and delete all subdirectories, leaving only the files that reside in the root directory.

Now, add each of the directories from your master distribution. (You can either drag them or use the WinISO's toolbar's Add button.) After you have all the directories you need, save the image file. Most CD-ROM recording software can burn a CD-ROM directly from an image file. Check your software's documentation for specific instructions. However, you might find yourself burning several CD-ROMs as you tweak and test your installation.

A final important step is to test your distribution. For information about doing so, see the Web-exclusive sidebar "Testing the Distribution," http://www.secadministrator.com, InstantDoc ID 26136.

Tedium Worth the Payoff
You might need to perform some tweaking, but you now have a solid Win2K installation CD-ROM. Although this process seems dreadfully tedious and certainly isn't for everyone, having a Win2K installation that's safe to connect to the Internet is a great payoff.

Related Content:

ARTICLE TOOLS

Comments
    There are no comments to display. Be the first one!
You must log on before posting a comment.

Are you a new visitor? Register Here

advertisement

advertisement

Windows is a trademark of the Microsoft group of companies. Windows IT Pro is used by Penton Media Inc. under license from owner.