Creating a Fully Patched Windows 2000 SP4 Slipstreamed Installation CD

System Requirements:

  • Windows 2000 Professional, Server
  • Test PC or Virtual Machine capable of running Windows 2000


This guide is in effect a very lazy way of creating an up-to-date Slipstream CD for your Windows 2000 installation. There are plenty of good guides on creating Windows Service Pack integrated CD’s, this guide is not intended to duplicate such content, but to take it a little further than they are prepared to go, while showing you a very easy trick in minimising the installation time required to patch your deployment.

Windows 2000 SP4 was and is the last Service Pack for Windows 2000. Its Release To Manufacturing date was 25/06/2003 and was released to the public a day later. The problem is that June 2003 was a long, long time ago, and there have been many patches released for Windows 2000 since – including an Update Rollup Package (URP).

With a completely vanilla Windows 2000 installation the deployment process goes something like:

  1. Install Windows 2000 RTM
  2. Install Windows 2000 SP4
  3. Reboot
  4. Install Windows 2000 URP
  5. Reboot
  6. Install Internet Explorer 6.0
  7. Reboot
  8. Install DirectX 9.0c
  9. Reboot
  10. Install Windows Media Player 9.0
  11. Install BITS 2.0
  12. Install Windows Installer 3.1
  13. Reboot
  14. Hit Windows Update
  15. Wait for each system to download the more than 100+ updates required
  16. Reboot
  17. Return to Windows Update and download any items now available from prerequisite installations
  18. Reboot
  19. Install and patch Applications

If you have done it, you know that it isn’t particularly fun.


Isn’t this what corporate deployment tools are for?

Yes! You would be completely correct in that argument, however the premise of this guide is that I find such a system to be unnecessarily messy and very resource wasteful.

Let me explain by stepping back through the list

  1. Install Windows 2000 RTM – The system’s i386 store is vanilla, and is stored on ever PC (+600MB overhead) and a +200MB dllcache is created for these files to be used by SFC
  2. Install Windows 2000 SP4 – A SP4 uninstall backup is created of all uninstalled files, a secondary cache is created of the SP for state changes (+150MB)
  3. URP, BITS, Windows Installer 3.1 – Again they have uninstall backups (+35MB)
  4. Windows Update – This is over 300MB to download for each workstation unless you are performing central deployment. Each one creates an uninstall backup, each one fills up the registry with removal data (creating an excessive list in Add/Remove) and this is exceptionally time consuming for deployment.
  5. MSIE 6.0, DX9 and WMP9 – These component updates are outside the remit of this guide as there is no official method of integrating these files (there are however unofficial methods). You will need to drop these onto your installation irrespective of following this process, along with a couple of other bits from Windows Update.

So my solution – if you have the opportunity in your deployment – is to get as much of the update process integrated into the install as is possible, without resorting to human deployment. In other words, performing natural Slipstreams of as many of the updates as you can before starting the rollout.

This is of course not a new concept, after all, Microsoft wrote integration routines into almost every Windows update released post 2000 SP4 for a reason.


So what is the point of this guide exactly?

Simple, this guide will run you through doing the slipstream, but minimising the time it take you to get hold of all of the little updates that you require manually before you install – basically, I am going to show you how to cheat!

How-to Guide :

For the purpose of this guide I am going to assume that you are using a Microsoft Virtual PC 2004/2007 test system. You can use any other virtualisation client, or a physical test system to do this, however you will need to explore file copies on your own.

Definitions of Terms

MSupdate – These are QFE files for Windows 2000. There are two types Express (used by Windows Update) and Full-File (available for administrators to download from Microsoft). This article requires the use of Full-File updates. MSupdate files for Windows 2000 make use of the shell icon shown below and will always display an installation screen similar to the one exampled below.

QFE Icon

QFE Installer Screen

MSI – Microsoft Installer (aka. Windows Installer) files. These are suffixed with .msi and cannot be used as part of this process

Cab Installer – Cab installers are the oldest form of Microsoft deployment technology, very few updates are deployed using this format – with a few Windows Script updates being an obvious exception.

Cab Installer Icon

Component Update – For the purpose of this article, component update refers to updates that do not apply to the core operating system, but extend an area of it. For example, Internet Explorer 6.0 SP1, DirectX 9.0c, Windows Media Player 9.0 or MDAC 2.8 SP1.

BITS 2.0 & Windows Installer 3.1 – The Background Intelligent Transfer Service and Windows Installer 3.1 are requisite updates necessary for access to Windows Update on any new PC installation. The BITS update is also responsible for the upgrading of the Windows 2000 automatic updates procedure, although there will be a time delay requiring Internet access between the appearance of the new UI in the control panel while Automatic Updates self-updates and inventories the fresh install.


Prepare the Test System

Step 1
Install Windows 2000 on the test system (with or without an SP level, with or without the Post SP4 URP installed, it doesn’t matter)

Step 2
Install Windows 2000 SP4 if you need to. Do not use Windows Update.

Step 3
Install Windows 2000 Post SP4 URP (KB891861 version 2) if you need to. Do not use Windows Update.

Step 4
Install Windows 2000 KB842773 BITS 2.0 and WinHTTP 5.1 Update. Do not use Windows Update.

Step 5
Install Windows 2000 KB893803 Windows Installer 3.1 version 2. Do not use Windows Update.

Step 6
Install Virtual PC’s Virtual Machine Additions

Step 7
Reboot the VM

Step 8
Go to Windows update, you can install MS Update if you want, but do remember the distinction between a MSUpdate patch and MSI/Cab Install and Component Updates (e.g. MSIE 6.0 SP1, DirectX etc).

Step 9
Copy the Critical Update List into notepad, add anything from the other categories that you want to include as well – remembering that is has to be a deployable MSUpdate (not MSI or Cab based). Remove the Windows Malicious Software Scanning Tool from the notepad list.

Step 10 (the boring part)
Point your browser to
In the search box, cut the KB number from notepad into the search box, hit search, find the required update for:

  • Windows 2000 SP4
  • MSIE 5.01 SP4
  • Windows Media Player 6.4
  • MDAC 2.5 SP3
  • Outlook Express 5

Download it into a new folder on the Slipstream workspace PC called c:\au\.

Note: I suggest that you cut the KB numbers out of the notepad file, as you will then know exactly where you are in the list.

QFE List in Notepad

It took me approximately 35-40 minutes to do this for the experiment that created this guide, and I was slowed down considerably by my storing all of the download URL’s below for your convenience.

Step 11
Install all of the updates at this point. Remember you just downloaded them all! So close Windows update and use the download files.
DO NOT update Internet Explorer to 6.0, DirectX, MDAC or Media Player – you are ONLY installing patches. I recommend that you write a batch script for the installation and use the ” -n -z -q” options as this will make the patch install fly through very quickly on the test system and save you from having to accept the EULA every time.

Step 12
Reboot the test system

Step 13
Go back to Windows Update. Find any NEW updates that have appeared as a result of a prerequisite installation – remember, we are not updating MSIE 6, WMP, DirectX etc and are only interested in MSupdate patch files!
Repeat the Step 10, 11 and 12 process for any new updates.

Step 14
Once you are happy that you have all the MSupdate files that Windows Update is going to give you, you might want to look around and consider any additional updates that you require in your deployment – so long as it is an MSupdate file, you can add it in here. Just download it into the c:\au folder on the Slipstream workspace PC.
At this point you can kill off the VPC if you wish.


QFE Direct Download List (As of 18/02/2008)

I suggest that you copy and paste the below into a text file and run it through a download manager rather than attempting to access each file by hand. Please note that I have no intention of maintaining the list below, or in correcting any URL changes that Microsoft make.


Prepare the Slipstream Workspace

Step 1
While it goes and does that, let us prepare the Slipstream workspace.
Open My Computer
Open C:
Create a new folder called “2k” (c:\2k\)
Open this folder and copy the entire contents of your Windows 2000 CD into this folder

Step 2
Slipstream 2000 SP4 into this folder. Clearly if you are starting from a 2000 SP4 CD, you don’t need to do this.
Download W2KSP4_EN.EXE to the root of C:\
Open a command prompt at the root of C:\
Issue the command:
W2KSP4_EN.EXE -s:c:\2k
Wait for the confirmation dialogue that the Slipstream has been successful

Step 3
Slipstream the Windows 2000 Post SP4 URP (KB891861 version 2).
Download Windows2000-KB891861-v2-x86-ENU.EXE to the root of C:\
Open a command prompt at the root of C:\
Issue the command:
Windows2000-KB891861-v2-x86-ENU.EXE -integrate:c:\2k
Wait for the confirmation dialogue that the Slipstream has been successful

Step 4
Slipstream the Windows 2000 KB842773 BITS 2.0 and WinHTTP 5.1 Update
Download Windows2000-KB842773-x86-ENU.EXE to the root of C:\
Open a command prompt at the root of C:\
Issue the command:
Windows2000-KB842773-x86-ENU.EXE -integrate:c:\2k
Wait for the confirmation dialogue that the Slipstream has been successful

Step 5
Slipstream the Windows 2000 KB893803 Windows Installer 3.1 version 2
Download WindowsInstaller-KB893803-v2-x86.exe to the root of C:\
Open a command prompt at the root of C:\
Issue the command:
WindowsInstaller-KB893803-v2-x86.exe -integrate:c:\2k
Wait for the confirmation dialogue that the Slipstream has been successful

Step 6
Create the c:\au folder on the Slipstream PC if you haven’t done so already. Deposit all of the Windows Update files from the Test PC into here, along with any GENUINE MSUpdate installation packages. CAB installation files will not work! MSI files will not work!

Step 7
Open a command prompt at c:\au.
Issue the command:
Dir /a /b *.exe > chain.bat

Step 8
You will find a bat file called chain.bat in c:\au, open it.
At the end of every line add: ” -integrate:c:\2k”

For example:
Windows2000-KB925902-x86-ENU.EXE -integrate:c:\2k

Step 9
Run chain.bat
I have intentionally left the confirmation prompt for each update on. You can add -q to the -integrate line if you don’t want to see them. The update will be slipstreamed at this point.
If you get any errors, you either have the command wrong, or the file is not one of the newer MSupdate patch files that supports integration or is a MSI, Cab distributable or Component update (e.g. Windows Media Player 9). You cannot Slipstream such updates, and must use corporate deployments tools for such updates.


Installation Results & Analysis

The proof is clearly in the pudding, as they say. Using the method outlined on this page and removing the overhead for the page file and hibernation cache, a fresh installation of Windows 2000 Professional, without any CD customisation or corporate deployment (i.e. completely vanilla) rolls in at 695 MB.

At installation the Windows 2000 install was fully secured at first boot -at least from the Operating System perspective. This is a significant point, particularly for Server installations where the time it takes to install an operating system, patch it and roll-out security software before you even begin to configure its roles can under certain situations be a critical risk factor.

Most importantly this process took no longer than the time taken to install the OS from the new CD. There was no additional overhead, or any additional reboots required.

To experiment with the difference it was important to ascertain just how much different and how much longer the process takes normally. By performing the same installation from scratch, applying the same updates from Windows Update (not MSIE 6.0, Windows Media Player or DirectX) in order of:

  1. Windows 2000 RTM
  2. Windows 2000 SP4
  3. Reboot
  4. Windows 2000 Post SP4 URP
  5. Reboot
  6. BITS 2.0
  7. Windows Installer 3.1
  8. Reboot
  9. Windows Update
  10. Reboot
  11. Windows Update
  12. Reboot

The installation size again with the page-file and hibernation cache files removed was 1.36 GB – almost twice the size! The installation time was also considerably longer, with at best another hour on top of the workstation installation and five reboots before you can sensibly start using the deployment. A significant issue if you happen to be undertaking frequent manual installations.

An additional difference also exists in the volume fragmentation – obviously there are far more files on the second system, however the data blocks are more contiguous the slipstreamed installation.

Obviously any administrator will want to perform the required Internet Explorer, DirectX, Windows Media Player and MDAC updates in order to make the system that little bit more usable. Due to the deployment methods utilised for the stated technologies, these would have to be included in the corporate deployment distribution, rolled out from Windows Update / Windows Update Services or pushed out via Active Directory. Thankfully this situation is starting to be addressed with Windows XP and Windows Vista now that legacy support is being shelved from Component updates post Internet Explorer 7.0.

The entire process of creating the CD, and assuming that you do use shortcuts for batch operations for the slipstream should take around about an hour to perform. The time saving is immediate in that it will save you at least that while waiting for the additional update time and reboots on an average Windows 2000 system. Once you have the patches downloaded once, it is a very simple process to add in the new updates released on “Patch Tuesday” each month and re-burn the Slipstream CD using the existing guides on the Internet.



My argument that this process is an acceptable one is obviously based upon the fact that this would not be acceptable in an ideal world! Despite this, the updates for the additional component technologies are far less common that for the core OS (which this process has almost completely patched) – particularly given that Internet Explorer updates are cumulative in nature. This makes the burden of distribution services considerably smaller under the circumstances, reducing bandwidth requirements between new installations and Windows update, reducing load on corporate patch deployment system and reducing the load on deployment servers all in one process.

After a non-exhaustive experiment, the installation process of the critical component updates can be performed in 2 reboots using the following procedure:

  1. Install MDAC 2.8 SP1
  2. Install Internet Explorer 6.0 SP1 (Do not click Finish at the end)
  3. Install DirectX 9.0c (Do not click Finish at the end)
  4. Install Windows Media Player 9.0 (ignore the grumble about previous installations)
  5. Reboot
  6. Aa manual reinstall of the Post SP4 URP to reflect the MSIE change
  7. All new updates from Windows Update at this point (use deployment)
  8. Reboot

At this point in the sample, the Windows 2000 installation size falls in at 878 MB all installed on the SlipStreamed system. Assuming the same installation size for the component updates and new patches, that pushes the raw install up to over 1.5GB.