In This Topic

Automating the PXE Boot

First to configure the client computer to perform PXE boots automatically when the computer is started, you can modify the boot order in the computer’s firmware (BIOS or Extensible Firmware Interface (EFI)) or by disabling any active partitions before booting.

  • If there are active partitions, the option to boot from the network must be higher in the boot sequence than the hard disk drive. It is important to note that this configuration is susceptible to a boot loop, a condition that causes a computer to always boot from the network, and never from the hard disk drive. For more details, see Avoiding a Boot Loop.

  • If there are no active partitions, the computer will be unable to boot from the hard disk drive, and it will proceed to the next boot item in the boot order. As such, we recommend that you include the option to boot from the hard disk drive before the option to boot from the network (to avoid a boot loop).

Second, the network boot program (NBP) that is downloaded by the client computer must automatically continue the boot process without user interaction (for example, by pressing F12). You can configure this by doing one of the following:

  • Specifying the default NBP of the server (per architecture) so that all clients receive the *.n12 boot program.

  • Specifying the NBP for a particular client so that only that client receives the *.n12 boot program.

  • Configuring unknown clients to perform PXE boots without requiring F12 (WDSUTIL /Set-Server /AllowN12ForNewClients:Yes) and then booting a computer that is not prestaged.

For a list of the NBPs, see the "List of NBPs" section in Managing Network Boot Programs.

Note

Because there is only one NBP for EFI computers, you must configure this setting within the EFI shell.

Avoiding a Boot Loop

When implementing a fully automated experience of booting from the network, it is often necessary to set the network as the first item in the client’s BIOS boot order and send a specific client an .n12 NBP. If you combine these two configurations, the client will automatically boot from the network without requiring user intervention, and the computer will end up in a circular loop (always booting from the network and never booting from the hard disk drive). The following are best practices that you can use to avoid a boot loop:

  • Always configure the hard disk drive as a higher priority than the network. To enable a computer that already has an operating system installed to boot automatically from the network (for example, when reprovisioning a computer), disable any active partitions before rebooting the computer to initiate the PXE boot.

  • For prestaged computers that are configured to boot from the network before booting from the hard disk drive, toggle the BootProgram value between *.N12 and *.COM to control the automatic PXE boot behavior. For example, set it to boot\x86\pxeboot.n12 when you want to boot the computer from the network, and set it to boot\x86\abortpxe.com when you want to boot from the hard disk drive. For instructions on how to do this, see How to Manage Client Computers.

  • For nonprestaged computers that are configured to boot from the network before booting from the hard disk drive, set the server default NBP to *.COM and configure the AllowN12ForNewClients option. This will prevent a boot loop if both of the following are true: the booting client will perform an operating system installation by using Windows Deployment Services, and the client computer is configured to join a domain, which is the default.

Example Scenario

Consider the following situation. Computer A has been configured with the following boot order: CD-ROM, Network, then Hard disk.

On the Windows Deployment Services server, the default NBP setting for x86-based computers is boot\x86\pxeboot.n12, which is an NBP that does not require pressing F12 to boot from the network. The following sequence of events will result in a boot loop:

  1. The computer is turned on.

  2. Assuming there is not a bootable CD, the computer boots from the network, downloads Windows PE from the Windows Deployment Services server, and proceeds through the user interface of the Windows Deployment Services client.

  3. The image installation to the hard disk drive begins.

  4. After the image is applied, the computer reboots.

The boot order sequence still specifies the network as a higher priority than the hard disk drive. And, the NBP received by the client is still *.N12, which causes the computer to continue the process of booting from the network. As a result, the image that was just applied to the hard disk drive will never be booted.

Automating the Selection of the Boot Image

Windows Deployment Services displays a menu that enables users to select a boot image. This menu is always automated, and when there are multiple boot images, one will be selected by default when the time-out value expires (which is configurable by using the Bcdedit tool). However, if there is only one boot image available to the client computer, it will be selected immediately. For more information about the boot menu, see Managing the Boot Menu. Because the boot menu selection does not require any user action, the only configuration task that you need to complete is to ensure that clients are directed to the correct default boot image. There are two methods for doing this:

  • Configure the default boot image at the server level by running WDSUTIL /Set-Server /BootImage:<Relative path>] /Architecture:{x86 | ia64 | x64} where <path> is the relative path to the RemoteInstall folder. This setting applies to all clients of a particular architecture (both prestaged and unknown computers) that connect to the server.

  • Configure the default boot image for a client by running the command WDSUTIL /Set-Device /Device:<name> /BootImagePath:<Relative path>, where <path> is the relative path to the RemoteInstall folder. This option works only for prestaged computers.