Deploying Vista - Part 4: Understanding Deployment Scenarios

by [Published on 20 May 2008 / Last Updated on 20 May 2008]

This series of articles on automating the deployment of Windows Vista to desktop computers continues by examining the different types of deployment scenarios you can use to deploy Vista.

If you would like to read the other parts in this article series please go to:

In the previous article of this series we learned about the seven configuration passes of Vista’s Setup process. Understanding these configuration passes is crucial because many answer file components can be added to more than one configuration pass. For example, we saw in the previous article that the x86_Microsoft-Windows-Shell-Setup component can be added to six of the seven configuration passes. So the question arises: Which configuration pass should I add this component to in my answer file if I want the settings I configure for this component to be applied?

The answer to this question is that it depends on what type of deployment scenario you are planning on using for deploying Vista, and that’s what this present article is all about. We’re going to briefly examine three possible deployment scenarios, and while you might be able to come up with other deployment scenarios, these three are commonly used in enterprise environments. The scenarios we will examine are called:

  • Build-to-Plan (BTP)
  • Build-to-Order (BTO)

As we look at each of these scenarios, we’ll relate them to the seven configuration passes of Vista’s Setup process. Then in future articles we’ll actually walk you through the steps of these scenarios.

Understanding the Build-to-Plan (BTP) Scenario

A reference image is an installed copy of Windows that you can later deploy using disk-imaging (also called “cloning”) onto multiple destination computers that have the same hardware configuration as your source computer. In a typical enterprise environment, the process for building a Vista reference image could look something like this:

  1. Create an answer file to automate the installation process and save it as autounattend.xml onto removable media such as a floppy disk or USB flash drive.
  2. Insert the DVD and answer file media into your source computer (a bare-metal system that has no operating system installed) and boot the system.
  3. Windows Setup starts by running the windowsPE and offlineServicing passes, which means that any components in your answer file that have been added to these passes will be used to apply customizations to how Windows Setup runs on the source computer.
  4. Once the .wim file has been copied to the reference computer’s hard drive, the specialize pass runs, so this means any components in your answer file that have been added to this pass will be used to apply customizations to how Setup runs.
  5. Once Setup finishes, the oobeSystem pass runs, which means this means any components in your answer file that have been added to this pass will be used to apply customizations to how Setup runs.
  6. Once Windows Welcome is finished and you’ve logged on, you then install service packs, add device derivers, install applications, and perform other customizations of your source computer.
  7. Once you’re source computer is ready, you then run the sysprep /generalize /oobe /shutdown command, which strips the system of all machine-specific data such as SIDs, event logs, and so on. If desired, you can also specify an answer file in your sysprep command so that any components in this answer file that have been added to the generalize pass of this answer file can be used to apply customizations to what sysprep does.
  8. Now you boot your sysprepped system using a Windows PE DVD and run ImageX to capture an image of your source computer. You then save this reference image on a network share or DVD so you can use it later on to deploy Vista to destination computers having the same hardware configuration as your source computer.

Examining the above scenario, we can see that the configuration passes you would use to add components to your answer file could be any or all of the following:

  • windowsPE pass
  • offlineServicing pass
  • specialize pass
  • oobeSystem pass
  • generalize pass (requires a separate answer file used by sysprep)

Understanding the Build-to-Order (BTO) Scenario

The built-to-order (BTO) scenario is similar to the built-to-plan (BTP) one above, except once you’ve created a single reference image for all destination computers having the same hardware configuration as your source computer, you can then customize this image further if needed for different users or departments (in an enterprise environment) or for different customers (if you’re a system builder or OEM). The initital steps of the BTO scenario are identical to those of the BTP scenario above. The BTO process then continues as follows:

  1. Use Windows PE and ImageX to apply the reference image you created earlier to one of the computers you are going to deliver to a particular group of users, customers, or a particular department.
  2. Once the installation is finished, run the sysprep /audit /generalize /shutdown command so that the next time you boot the system it will start in audit mode.

This calls for a brief aside on what audit mode means. When you boot a computer on which Vista has been installed, it can do one of two things:

  • Run the oobeSystem configuration pass and then launch Windows Welcome (also called “Machine OOBE Experience”) which lets the user customize his system before logging on by accepting the EULA, creating accounts, selecting her Time Zone, and so on.
  • Run the auditSystem and auditUser configuration passes and then start the computer in audit mode, a stage of Windows Setup that lets you perform additional customizations and test these customizations prior to deploying Windows. These customizations could include adding device drivers, installing applications, install software updates, and so on.

Booting into Windows Welcome is the default; to force a computer to boot into audit mode, you have to run the sysprep /audit command on it. When you run this command, you can specify an answer file that can be used to apply customizations specified by components for the auditSystem and auditUser configuration passes. Booting to audit mode brings up the desktop faster since you can skip Windows Welcome, so this mode is useful when you might need to perform further customizations on a computer before delivering it to the users or customers for which it is intended. Audit mode also allows you to start with a single organizational-wide reference image for a particular hardware configuration and then customize this image with additional drivers and applications when needed for the needs of particular users, customers, or departments. In effect, this means you can have a smaller number of images you’ll need to maintain.

Now back to the remaining steps of our BTO scenario.

  1. Use Windows PE and ImageX again to capture a new reference image for your particular group of users, customers, or a particular department. Note that your original reference image was for all computers in your organization that have the same hardware configuration, while this new reference image is for all computers that are needed for a particular group of users or customers or a particular department.
  2. Then use Windows PE and ImageX to install your new reference on the computers destined for your particular group of users or customers or your particular department.
  3. Boot these destination computers into audit mode and perform any further customizations needed for them (you can use an answer file with components added for the auditSystem and auditUser configuration passes to automate such customizations if needed).
  4. Run the sysprep /oobe /shutdown command on the destination computers. The /oobe switch means that Windows Welcome will launch the next time these computers boot.
  5. Put the computers on a pallet and deliver them to the users, customers or department they are destined for.

In future articles of this series we’ll walk through the steps of these deployment scenarios and make different kinds of customizations, but for now we still need to build up our basic understanding of Vista deployment concepts and tools. And since I’ve mentioned sysprep a few times in this article, I better talk about that in my next article of this series.

If you would like to read the other parts in this article series please go to:

Featured Links