Slipstreaming Windows Service Packs
Earlier this week, I had a hard drive malfunction in one of my servers. The drive wasn’t completely dead though, much of the data was still readable. This was quite a relief since I discovered that the backup of the drive was also corrupt. I wanted to use Windows Backup to copy the critical files off of the old drive, but unfortunately, Windows would not boot. I decided to fix the problem by reinstalling Windows so that I could boot the system and then copy any salvageable data to another drive.
Although this sounds like a solid plan, there is one major hole in it though. The server was running Windows Server 2003 Service Pack 1. My Windows Server installation CD was a pre-service pack release. If I were to simply install the CD, I would be overwriting newer operating system files and would probably mess the system up worse than it already was.
To get around this problem, I decided to create a Windows Server 2003 installation CD that already included the service pack. The process for doing so is called slipstreaming. The idea is that you overwrite some of the files on the installation CD with files from the service pack and then burn the new collection of installation files to a bootable CD.
Before we delve into the process, there are a few things that you are going to need. First, you are going to need a Windows Server 2003 installation CD. This trick works with Windows XP as well, and I suspect that it probably also works with Windows 2000. You are also going to need a copy of the service pack that you plan on installing.
Although the process of slipstreaming a service pack onto the Windows installation files is pretty easy, making a bootable slipstreamed Windows installation CD out of your modified files takes a little more effort. Not too long ago, the procedure involved using Nero or a similar product to manually create the necessary boot sector information. Today though, there are utilities that are a better fit for the job. You will still need a copy of Nero, Easy Media Creator, or something like that to create the CD, but I recommend using a utility called nLite to help create the CD image prior to burning.
nLite is a free utility that you can download from the Internet at: http://www.nliteos.com/download.html nLite was actually designed as a mechanism for removing Windows components, but it works really well for creating slipstreamed boot CDs. nLite also has some prerequisites of its own. nLite is dependant on the Microsoft .NET Framework. You can download the .NET Framework from the Microsoft Web site at: http://www.microsoft.com/downloads/thankyou.aspx?familyId=262D25E3-F589-4842-8157-034D1E7CF3A3&displayLang=en. You will also need Service Pack 1 for the .NET Framework, which is available for download at: http://www.microsoft.com/downloads/thankyou.aspx?familyId=a8f5654f-088e-40b2-bbdb-a83353618b38&displayLang=en
Once you have downloaded and installed the .NET Framework, the service pack for the .NET Framework, and the nLite utility, you are ready to get started. Using nLite to slipstream a service pack is simple, but I should point out that nLite is useful for more than just slipstreaming service packs. The utility is designed to help you create custom Windows installation CDs.
When you launch nLite, you will see a screen asking you what language you want to use. If you are reading this, then I’m assuming that you will choose English. Click Next and you will be prompted to enter the location of the Windows installation files. You can enter a network share path or a folder on your hard drive, but I usually prefer to point nLite directly to a factory Windows installation CD. Regardless of which method you decide to use, you will see a screen similar to the one shown in Figure A.
Figure A: Enter the location of your Windows installation files
The next screen that you will see gives you the chance to import some other settings. Just click Next to ignore this screen. You will now see the main nLite screen, shown in Figure B. Click on the Integrate a Service Pack button and the Create a Bootable ISO button. Click Next to continue.
Figure B: Click on the Integrate a Service Pack button and the Create a Bootable ISO button
Click Next and nLite will prompt you to select the service pack for integration. Click the Select button and then select the service pack installation file. It is not necessary to manually extract the service pack file’s contents. As soon as you make your selection, the slipstreaming process will begin. The amount of time that slipstreaming takes to complete depends heavily on what version of Windows you are using and on the speed of your system. On my 3.2 GHz Pentium 4, it took about a minute and a half to slipstream Service Pack 1 onto Windows Server 2003.
When the slipstreaming process completes, you will see a screen that asks you for a label for the ISO file that nLite will create. The ISO file is a CD image. I recommend using a descriptive label, such as WIN2K3SP1 or something like that. This screen also gives you the option of including other files on the CD image, but for a simple slipstream, doing so is unnecessary. Click Next to create the ISO file.
Burning the CD
To the best of my knowledge, the Windows operating system does not offer a mechanism for creating a CD based on an ISO image. Therefore, you will have to rely on third party software to get the job done. I like using Easy Media Creator (the name of the new version of Easy CD Creator), but Nero works too. The actual method that you will use depends greatly on the CD burning software that you use. Image C shows what burning a CD based on an ISO image looks like in Roxio’s Easy Media Creator.
Figure C: Once you have created the ISO file, you will have to burn it to a CD
An Alternate Method
The nLite utility automates the process of slipstreaming a service pack. However, you can slipstream a service pack without the aide of nLite. The actual slipstreaming process is simple. The catch is that the method that I’m about to show you isn’t the best choice if you plan on burning the Setup files to a bootable CD. If you want to create a slipstreamed set of installation files for use on a non-bootable CD or for use on a network deployment share, then this technique works great. If you want to create a bootable CD, then you can use this technique in conjunction with some fancy boot sector manipulation. All things considered, the other technique that I showed you is a lot easier for creating a bootable installation CD.
The first step in manually slipstreaming a service pack is to copy the Windows installation files to a folder on your network (or on your local hard drive). Next, create an empty folder on the hard disk and copy the service pack to that folder. Now, open a Command Prompt window, navigate to the service pack folder, and enter the service pack’s file name with the –X switch (servicepack.exe –X). The service pack setup program will now ask you for the path to which you would like to extract the service pack files. Enter the name of the current directory and click OK to continue. When you do, the setup program will extract the files contained within the service pack. The final step is to enter the UPDATE command followed by the /S switch a colon, and the path to the Windows installation files (UPDATE /S:C:\W2K3CD). This will update the Windows installation files to include the service pack.
In this article I have explained that if you are trying to reinstall Windows as a way of repairing a malfunctioning system, you can do more harm than good if you attempt to install the version contained on the installation CD. A better alternative is to create a slipstreamed installation CD which combines Windows with the current service pack. In this article, I showed you how to create such a CD.