56.1 Understanding Desktop Management Preboot Services

This section contains the following information to help you to understand ZENworks Desktop Management Preboot Services:

56.1.1 About Desktop Management Preboot Services

PXE (Preboot Execution Environment) is an industry-standard protocol that allows a workstation to boot up and execute a program from the network before the workstation operating system starts. PXE uses DHCP (Dynamic Host Configuration Protocol) and TFTP (Trivial File Transfer Protocol). The PXE environment is loaded from either the NIC in flash memory or read-only memory, or in the same memory as the system BIOS.

Desktop Management Preboot Services uses PXE to find out if there is imaging work specified for a workstation and to provide the workstation with the files necessary to boot to the Desktop Management imaging environment.

By using Preboot Services, you can put an image on a workstation even if the workstation’s hard disk is blank. You do not need to use a ZENworks Desktop Management imaging boot CD or DVD, or a Desktop Management imaging hard-disk (Linux) partition on the workstation.

Before you can use Preboot Services, you need to do the following:

  • Install the Desktop Management Imaging and Preboot Services (PXE Support) components on your ZENworks Imaging server.

  • Enable PXE on the workstation.

  • Have a standard DHCP server, either on your ZENworks Imaging server or on another network server.

For information about requirements, installing Desktop Management and Preboot Services on your ZENworks Imaging server, enabling PXE on a workstation, and configuring your DHCP server, see Section 56.2, Installing and Setting Up Desktop Management Preboot Services.

56.1.2 A Typical Preboot Services Operation

When a PXE-enabled workstation starts to boot up, it sends a DHCP discovery request to determine the IP address of the ZENworks Imaging server. The DHCP server responds with an IP address for the client to use, and the Proxy DHCP server responds with the IP addresses of the Transaction server, TFTP, and MTFTP (Multicast TFTP) servers, as well as the filename of the Preboot Services client.

The PXE workstation then downloads the Preboot Services client (dinic.sys) using either TFTP or MTFTP.

After the Preboot Services client is downloaded and executed, the workstation checks the Preboot Services Transaction server to see if there is any imaging work to do. If there is imaging work to do, it downloads the Desktop Management Workstation Imaging environment (/srv/tftp/boot/linux and linld.com) from the server so that the workstation can be booted to Linux and any imaging tasks can be performed. If there are no imaging tasks to perform, these files are not downloaded and the workstation proceeds to boot to its operating system.

In addition to using PXE for automation, you can also execute Preboot work manually using one of the following:

For more information, see Section 60.0, Performing Manual Imaging Operations.

56.1.3 Illustrating the Preboot Services Processes for Linux Imaging Servers

The following illustrations show the interaction between a Preboot Services (PXE) device and a ZENworks Imaging server, starting when the PXE device is turned on and begins to boot, and ending when imaging work begins on that device. The information assumes that the devices and imaging servers are in the same network segment.

Depending on whether novell-proxydhcp is configured on the same server as the standard DHCP server or on a different server, the imaging process begins differently. The following sections illustrate how the process begins for each configuration:

Then, the subsequent phases are the same:

Phase 1a: Standard DHCP and Novell Proxy DHCP Configured on Separate Servers

For this example, the DHCP server and the ZENworks Imaging server are two separate servers on the network.

Figure 56-1 DHCP Configuration on Separate Servers

Phase 1 illustration for when the novell-proxydhcp daemon is running on the same server as the standard DHCP server.

Processes:

  1. When the device boots, the PXE BIOS issues a DHCP request with PXE extensions. The request is broadcast on port 67.

  2. The DHCP server responds with IP configuration information on port 68, and the Proxy DHCP server responds on port 68 with the name of the bootstrap program (nvlnbp.sys) and the IP address of the TFTP daemon where it can be found.

  3. Continue with Phase 2.

Phase 1b, Part A: Standard DHCP and Novell Proxy DHCP Configured on the Same Server

For this example, the DHCP server and the ZENworks Imaging server are configured on the same server on the network. See Phase 1b, Part B: Standard DHCP and Novell Proxy DHCP Configured on the Same Server for the second part of this example.

Figure 56-2 DHCP Configuration on the Same Server, Part A

Phase 1a illustration for when the novell-proxydhcp daemon is running on a different server than the standard DHCP server.

Processes:

  1. When the device boots, the PXE BIOS issues a DHCP request with PXE extensions. The request is broadcast on port 67.

  2. The DHCP server responds with IP configuration information on port 68, including tag 60 for PXEClient, which indicates that novell-proxydhcp is running on the same server.

Phase 1b, Part B: Standard DHCP and Novell Proxy DHCP Configured on the Same Server

Figure 56-3 DHCP Configuration on the Same Server, Part B

Phase 1b illustration for when the novell-proxydhcp daemon is running on a different server than the standard DHCP server.

Processes:

  1. When the device sees tag 60 in the DHCP response, the PXE BIOS reissues the DHCP request on port 4011.

  2. The Proxy DHCP server responds on port 68 with the name of the bootstrap program (nvlnbp.sys) and the IP address of the TFTP daemon where it can be found.

  3. Continue with Phase 2.

Phase 2

Figure 56-4 Phase 2 of the Preboot Services Process

Processes:

  1. The PXE BIOS requests nvlnbp.sys from the TFTP server.

  2. The TFTP server sends nvlnbp.sys to the PXE device.

  3. The PXE device loads nvlnbp.sys into memory.

Phase 3

Figure 56-5 Phase 3 of the Preboot Services Process

Processes:

  1. Hardware detection is performed by nvlnbp.sys and it reads the image-safe data.

  2. Nvlnbp.sys requests the Preboot Services Menu configuration from the Data Model via the novell-zmgprebootpolicy daemon.

  3. The novell-zmgprebootpolicy daemon returns the Preboot Services Menu configuration. In this case, the menu described in pxemenu.txt is displayed when a user presses the hot key.

Phase 4

Figure 56-6 Phase 4 of the Preboot Services Process

Processes:

  1. Assuming no Preboot Services Menu is displayed, the device asks the Data Model (via novell-zmgprebootpolicy) if any work is assigned.

  2. Assuming work is assigned, the novell-zmgprebootpolicy daemon responds with the name of the configuration file to use in performing the preboot work (z_auto.cfg in this example).

Phase 5

Figure 56-7 Phase 5 of the Preboot Services Process

Processes:

  1. The PXE device requests pxelinux.0 from the TFTP server.

  2. The TFTP server sends pxelinux.0 to the device.

Phase 6

Figure 56-8 Phase 6 of the Preboot Services Process

Processes:

  1. Pxelinux.0 replaces nvlnbp.sys in memory and requests z_auto.cfg from the TFTP server.

  2. The TFTP server sends the z_auto.cfg file to the device.

Phase 7

Figure 56-9 Phase 7 of the Preboot Services Process

Processes:

  1. Pxelinux.0 requests and receives /boot/kernel from the TFTP server.

  2. Pxelinux.0 requests and receives /boot/initid from the TFTP server.

  3. Pxelinux.0 requests and receives /boot/root from the TFTP server.

  4. Pxelinux.0 requests and receives /boot/updateDrivers.tgz from the TFTP server, but is denied because the file does not exist (it is used to provide post-release software updates).

Phase 8

Figure 56-10 Phase 8 of the Preboot Services Process

Processes:

  1. SUSE Linux Enterprise Server (SLES) 9 SP1 is loaded and run on the device.

  2. The ZENworks Imaging Engine (img) requests the assigned Preboot Services work details, then performs the work.

  3. The image is laid down on the device and it automatically reboots.

56.1.4 Illustrating the Preboot Services Processes for NetWare and Windows Imaging Servers

The following diagrams show the interaction between a Preboot Services (PXE) client workstation and a ZENworks Imaging server, starting when the PXE client workstation is turned on and begins to boot up, and ending when imaging work begins on that workstation.

Three diagrams are used to show one complete process. The first diagram shows steps 1-5, the second diagram shows steps 6-11, and the third diagram shows steps 12-19. Each number corresponds to explanatory text in a table following the diagram.

In this example, the DHCP server and the ZENworks Imaging server are two separate servers on the network, although it is possible to run both from the same server with some additional configuration. This example also assumes that the client workstation and the servers are in the same segment.

Diagram 1 (Steps 1-5)

Figure 56-11 Preboot Services Processes, Diagram 1 (Steps 1-5)

Table 56-1 Preboot Services Processes, Steps 1-5

Step

Explanation

The workstation is turned on and begins to boot up. PXE (triggered by the BIOS, network interface card, or PXE-on-Disk boot diskette) sends a DHCP request to the network. The DHCP request includes PXE extensions.

The DHCP server responds with an IP address for the workstation to use. This step might occur before or after Step 3.

The Proxy DHCP server responds with the IP addresses of the Preboot Services Transaction server, Preboot Services TFTP and MTFTP servers, and with the name of the Preboot Services client (dinic.sys).

The Preboot Services client includes a preboot component that makes the workstation available on the network before the operating system has loaded. This component ensures that the workstation can contact the Transaction server (in Step 7) even when there is no operating system installed on the workstation.

Using TFTP or MTFTP, the Preboot Services client (dinic.sys) is downloaded to the PXE client workstation.

TFTP is used by default because it speeds the workstation’s boot process; however, you can change the configuration to use MTFTP. For more information, see Section 56.2, Installing and Setting Up Desktop Management Preboot Services.

If a PXE-on-Disk boot diskette was used in Step 1, the Preboot Services client does not need to be downloaded, and this step does not occur.

The Preboot Services client is loaded on the PXE client workstation.

Diagram 2 (Steps 6-11)

Figure 56-12 Preboot Services Processes, Diagram 2 (Steps 6-11)

Table 56-2 Preboot Services Processes, Steps 6-11

Step

Explanation

The Preboot Services client reads the image-safe data and discovers the hardware on the workstation.

The Preboot Services client connects to the Transaction server and authenticates with the server. The Preboot Services client sends information about the workstation to the Transaction server with a request to find out if the PXE menu should be displayed on this workstation.

The Transaction server checks with zenpxe.nlm to see if the PXE menu should be displayed on this workstation.

Zenpxe.nlm checks with the Imaging Proxy Server to find out if the PXE menu should be displayed on this workstation.

The Imaging Proxy Server checks the PXE menu setting in the workstation object, workstation policy, or server policy that applies to this workstation. The possible settings include do not display, always display, or display only when a specific keystroke is pressed at the workstation when booting.

The Imaging Proxy Server sends information about the PXE menu setting to the Transaction server.

The Transaction server sends information about the PXE menu setting to the Preboot Services client.

Diagram 3 (Steps 12-19)

Figure 56-13 Preboot Services Processes, Diagram 3 (Steps 12-19)

Table 56-3 Preboot Services Processes, Steps 12-19

Step

Explanation

If the PXE menu should be displayed on the workstation, it is sent via TFTP or MTFTP to the workstation and is displayed.

A user can make selections from the PXE menu. If the user selects to continue in automatic or diagnostic mode, the Preboot Services process continues with Step 13. If the user makes any other selection, the Preboot Services process does not continue.

If the PXE menu should not be displayed (or if the user is required to press a specific keystroke but does not), the Preboot Services process skips this step and continues with Step 13.

The Preboot Services client sends a request to the Transaction server to see if there is any imaging work specified for this workstation.

The Transaction server checks with zenpxe.nlm to see if there is any imaging work specified for this workstation.

Zenpxe.nlm checks with the Imaging Proxy Server to see if there is any imaging work specified for this workstation.

The Imaging Proxy Server performs a limited check of attributes, multicast sessions, and imaging rules. (A more detailed check for imaging work is performed by the ZENworks Imaging Engine after the workstation is booted to Linux.)

The Imaging Proxy Server sends information about any imaging work specified for this workstation to the Transaction server.

The Transaction server sends information about any imaging work specified for this workstation to the Preboot Services client.

The Preboot Services client contacts the TFTP server and downloads the files necessary to boot to the Desktop Management Workstation Imaging (Linux) environment (/srv/tftp/boot/linux and linld.com).

The workstation boots to the Desktop Management Imaging environment and proceeds with the imaging work.