Automating Setup

Applies To: Windows Server 2008, Windows Server 2008 R2

This topic contains information about configuring unattended installation using Windows Deployment Services. For step-by-step instructions, see Performing an Unattended Installation.

In This Topic

  • Creating Unattend Files

  • Automating the User Interface Screens of the Windows Deployment Services Client

  • Automating the Remaining Setup Phases

Creating Unattend Files

To automate the entire installation you use two different unattend files: one for the Windows Deployment Services UI screens, and one for the later phases of Setup. Two files are necessary because Windows Deployment Services can deploy two image types: images that support the Unattend.xml format (Windows Vista, Windows Server 2008, Windows 7, and Windows Server 2008 R2) and previous operating systems that do not support the Unattend.xml format (Windows XP and Windows Server 2003).

  • Windows Deployment Services client unattend file. The client unattend file automates the Windows Deployment Services client user interface screens (such as entering credentials, choosing an install image, and configuring the disk). This file uses the Unattend.xml format and is stored on the Windows Deployment Services server in the RemoteInstall\WDSClientUnattend folder. For more information, see Automating the User Interface Screens of the Windows Deployment Services Client later in this topic.

  • Image unattend file. Image unattend files automate the remaining phases of setup (for example, offline servicing and Sysprep specialize). This file uses the Unattend.xml or Sysprep.inf format, depending on the version of the operating system of the image. It is stored in a subfolder (either $OEM$ structure or \Unattend) in the per-image folder. For more information, see Automating the Remaining Setup Phases later in this topic.

It is possible to use a single unattend file throughout the entire installation process. To do this, you must pass an unattend file to Setup.exe with the /unattend:<unattend file> option, and you must configure the command-line unattend precedence appropriately. For precedence information, see Advanced Unattended Installation Scenarios and for an example file, see Sample Unattend Files. In addition, you can configure Windows Deployment Services to search for an unattend file if a file is not specified. For more information, see the “Implicitly Searching for an Answer File” section at Methods for Running Windows Setup (https://go.microsoft.com/fwlink/?LinkId=120686).

Automating the User Interface Screens of the Windows Deployment Services Client

This section contains details about the Windows Deployment Services client unattend file. For step-by-step instructions about configuring this file, see Performing an Unattended Installation.

You automate the UI screens using the Windows Deployment Services client unattend file (Unattend.xml). To completely automate the UI screens, you must specify settings that correspond to each screen. Unfortunately, this is not easy to figure out because of the Unattend.xml design. Unattend.xml is organized by the phases of unattend setting processing. As a result, there is not always a 1:1 mapping relationship between a particular setting and a UI screen. In addition, not all of the settings that are necessary to automate the UI screens for the Windows Deployment Services client are grouped within the file. We recommend that you use Windows System Image Manager (Windows SIM) to author the Windows Deployment Services client unattend file because it abstracts the format of the unattend file and makes for a simplified authoring experience.

Some of the sections in this file are identical to the unattend file that you use for Setup. For example, the DiskConfiguration setting used by the Windows Deployment Services client is identical to the DiskConfiguration section used by Setup. Other settings are specific to Windows Deployment Services (these reside in the WindowsDeploymentServices section) and are processed only when Setup.exe is running in Windows Deployment Services mode (see the “When Setup Is Started in Windows Deployment Services Mode” section in How the Windows Deployment Services Client Works (https://go.microsoft.com/fwlink/?LinkId=147067)).

The Windows Deployment Services client processes only settings in the Windows PE section of the client unattend file. It will not process settings in any other sections of that file, nor will it pass on the client unattend file for further processing after the image is applied, unless at least one of the following is true:

  • You have configured command-line precedence and are using an unattend file that was passed to Setup through the command line. For more information, see Advanced Unattended Installation Scenarios.

  • You do not have an image unattend file and the client computer is not configured to join a domain.

Unattend File Settings

The settings in the following table must be specified in the Windows Deployment Services client unattend file to completely automate the client experience. You can find the complete details of these settings at Windows Unattended Setup Reference https://go.microsoft.com/fwlink/?LinkId=120687. For examples, see Sample Unattend Files.

UI page Component Unattend setting Explanation

Language-neutral page

Microsoft-Windows-International-Core-Windows PE

SetupUILanguage

Specifies the language for the Windows Deployment Services client UI. This setting is required only when the boot image has Setup resources for multiple languages.

Welcome and keyboard selection page

Microsoft-Windows-International-Core-Windows PE

InputLocale

Specifies the computer's input locale and the keyboard layout for the selected image. If this setting is not specified, a default will be chosen based on UILanguage.

Even if <InputLocale> is properly configured not to display the UI, the welcome page will be displayed if the credentials page <WillShowUI> value is set to Always.

Credentials page

Microsoft-Windows-Setup -> WindowsDeploymentServices -> Login

Credentials

Specifies the user name, domain, and password of an account with proper permissions to install the image.

Image selection page

Microsoft-Windows-Setup -> WindowsDeploymentServices

InstallImage

Specifies the image to install.

Image selection page

Microsoft-Windows-International-Core-Windows PE

UILanguage

Specifies the language for the image. If this setting is not specified or if the specified value does not match an available language, the image selection page will be displayed.

Do not specify this value if InstallImage is a Windows Server 2003, Windows 2000, or Windows XP image. In those cases, this setting does not apply and will cause an error (which causes the image selection page to appear).

Image selection page

Microsoft-Windows-International-Core-Windows PE

UILanguageFallback

Specifies the language to be used if the computer's default UI language is only partially localized for the selected image.

Disk configuration page

Microsoft-Windows-Setup -> DiskConfiguration

Disk

Specifies the disk configuration settings.

Disk configuration page

Microsoft-Windows-Setup -> WindowsDeploymentServices -> ImageSelection

InstallTo

Specifies the disk and partition to which the image should be installed.

Automating the Remaining Setup Phases

You automate the remaining phases of Setup with an image unattend file (Unattend.xml or Sysprep.inf). For examples, see Sample Unattend Files.

  • Unattend.xml. For Windows Vista, Windows Server 2008, Windows 7, and Windows Server 2008 R2 images, author Unattend.xml by using Windows SIM, save it to a known location, and then associate the file with an image using the management tools. For step-by-step instructions, see Performing an Unattended Installation.

  • Sysprep.inf. For images prior to Windows Vista, author Sysprep.inf by using Setup Manager and then save these files to the $OEM$ structure of the image (for example, D:\RemoteInstall\Images\Windows XP\winxpsp2\$OEM$\$1\sysprep\sysprep.inf). Now when you deploy the image, Setup will automatically locate and use the Sysprep.inf file.