By Val Bakh
2.3.1 Deployment images
Before Windows Vista, disk cloning, or imaging, methods did not provide much flexibility. Fortunately, that is no longer the case. Now you can create logical images in the Windows Imaging (WIM) format. A WIM image corresponds to a disk volume, and a single .wim file can contain multiple images. WIM images are everything that sector-based images were not: they are hardware-independent; are only about half the size of the original data; do not destroy existing data on target volumes; can be deployed to volumes of any type and size, provided there is enough free space on the target volume; and can be modified offline. Now, deploying Windows 7 to a large number of target computers is not as daunting a task as it used to be with Windows XP. So how does it work?
Since we are now talking about an enterprise environment, we can safely assume you are not restricted to a single blank computer, as often would be the case for a regular home user. Suppose you have a personal workstation with Windows 7 up and running and connected to the Internet. Go to Microsoft Download Center, find and download Windows Automated Installation Kit (WAIK) for Windows 7, and install it on your workstation. WAIK contains a lot of tools and resources, but for now we are interested in only one of them: ImageX is a command-line tool that can capture and apply WIM images. Find it, and copy it to a USB flash drive (UFD) or any other place where you can easily access it.
WAIK includes three versions of ImageX: one for 32-bit computers (x86), one for regular 64-bit computers (x64, sometimes also known as amd64), and one for Itanium-based computers (ia64). You will find all three versions of ImageX in the architecture-specific subfolders of the \Program Files\Windows AIK\Tools folder on your workstation. Which version should you use? Obviously, if all your computers have 32-bit hardware, you can use only the 32-bit version. But nowadays, most computers have 64-bit hardware. If that is what you work with, you will be better off with the 64-bit version of ImageX, even if the editions of Windows 7 that you need to deploy are 32-bit. This is because 64-bit software runs a lot faster than 32-bit software. So why would you want to spend an hour to capture an installation image if you can do it in less than half of that time?
To capture and deploy WIM images, you’ll need to run ImageX from within Windows Preinstallation Environment (WinPE). WinPE is a starter operating system that you can boot from a CD, DVD, or UFD and run entirely from RAM, without installing it on the computer’s hard disk. The version of WinPE that is available on a Windows 7 installation DVD is 32-bit, even if the DVD includes 64-bit editions of Windows 7. A 64-bit version of WinPE is available on a Windows Server 2008 R2 installation DVD, or you can create a custom version of WinPE by using WAIK and burn it to a CD.
Now that you have dealt with all the preliminaries, the real work is relatively easy.
Step one: Install Windows 7 on a computer that you want to use as a reference—we’ll call it a reference computer—install whatever applications the end users will need, and configure the appropriate non-user-specific settings for everything that needs to be configured, except for domain membership. Don’t join the computer to any domains; leave it as a stand-alone computer.
Step two: Open a Command Prompt window as an administrator, change to the \Windows\system32\sysprep folder, and run the following command:
sysprep /generalize /oobe
This command will prepare the installation for duplication. Oobe stands for out-of-box experience, which is another term for the Windows Welcome phase of the startup process of a new installation. The /generalize option will remove all the settings that are specific to the reference computer. When the command completes, the computer will automatically shut itself down.
Step three: Boot the reference computer into WinPE, and run ImageX with the /capture option. You can find all the necessary command-line options for ImageX in the ImageX Technical Reference. ImageX will capture the image of the specified volume into a .wim file. You can save the file to any suitable location: another volume on a local hard disk on the reference computer, a UFD, or a network share on a file server.
Now you have a WIM image of the requisite custom installation of Windows 7. How do you deploy it to target computers? We’ll talk about some interesting details of this process later, in another installment of our Tips and Tricks. For now, we’ll just mention the general idea. One possibility is running Windows Setup from a command-line and specifying the custom image that you have just created. Another method is running ImageX with the /apply option. In the latter case, you’ll need to first create and appropriately configure a system volume and a boot volume on each target computer.