以下各节说明预引导服务流程如何工作:
典型的预引导服务操作流如下所示:
在“ZENworks 控制中心”内创建“映像”分发包并将其指派给启用 PXE 的设备。
启用 PXE 的设备开始引导。
设备发送 DHCP 发现请求以确定预引导服务映像服务器的 IP 地址。
DHCP 服务器以一个 IP 地址进行响应,供设备使用。
Novell-proxydhcp 以 TFTP 服务器的 IP 地址以及预引导服务引导程序的文件名 (nvlnbp.sys) 进行响应。
PXE 设备使用 novell-tftp 下载预引导服务引导程序。
下载并执行预引导服务引导程序后,设备将检查 novell-zmgprebootpolicy,看是否有要执行的映像工作。
如果有要执行的映像工作(包含于指派给设备的映像分发包中),设备会执行以下任务
ZENworks Imaging: 从服务器下载 Configuration Management 映像环境,以便能够引导到 Linux。
第三方映像: 从服务器下载 WinPE 环境。
执行“映像”分发包中包含的所有映像任务。
如果没有要执行的映像任务,则不下载文件,同时设备将继续引导到其操作系统。
除了使用 PXE 实现自动操作外,您还可以使用下列方法之一手动执行“预引导”工作:
有关更多信息,请参见部分 3.1.2, 使用命令行执行 ZENworks Imaging 操作。
下图显示预引导服务 (PXE) 设备和预引导服务映像服务器之间的交互,这种交互在 PXE 设备开机并开始引导时开始,在该设备映像工作开始时结束。
以下示例假设设备与“映像服务器”在同一个网段内。
映像流程开始的方式各不相同,具体视标准 DHCP 服务器或另一服务器上是否配置了 novell-proxydhcp 而定。以下各节说明每种配置的流程如何开始,然后是第 2-8 阶段:继续此流程中说明的阶段(对于这些配置均适用)。
在此示例中,DHCP 服务器和预引导服务映像服务器是网络中两台独立的服务器。
图 1-1 独立服务器上的 DHCP 配置
流程:
设备引导时,PXE BIOS 会发出 DHCP 请求,其中包括 PXE 扩展。请求在端口 67 上广播。
DHCP 服务器在端口 68 上以 IP 配置信息进行响应,而 Proxy DHCP 服务器在端口 68 上以引导程序的名称 (nvlnbp.sys) 和 TFTP 服务或守护程序所在位置的 IP 地址进行响应。
在此示例中,DHCP 服务器和预引导服务映像服务器配置在网络中的同一台服务器上。请参见在同一台服务器上配置的标准 DHCP 和 Novell Proxy DHCP:B 部分查看此示例的第二部分。
图 1-2 同一台服务器上的 DHCP 配置,A 部分
流程:
设备引导时,PXE BIOS 会发出 DHCP 请求,其中包括 PXE 扩展。请求在端口 67 上广播。
DHCP 服务器在端口 68 上以 IP 配置信息进行响应,其中包括 PXEClient 的标签 60(指示 novell-proxydhcp 正在同一台服务器上运行)。
图 1-3 同一台服务器上的 DHCP 配置,B 部分
流程:
当设备在 DHCP 响应中发现标签 60 时,PXE BIOS 就会在端口 4011 上重新发出 DHCP 请求。
Proxy DHCP 服务器在端口 68 上以引导程序的名称 (nvlnbp.sys) 和 TFTP 服务或守护程序所在位置的 IP 地址进行响应。
以下各节说明预引导服务流程在第 1 阶段后如何继续进行:
图 1-4 预引导服务流程的第 2 阶段
流程:
PXE BIOS 从 TFTP 服务器请求 nvlnbp.sys。
TFTP 服务器将 nvlnbp.sys 发送给 PXE 设备。
PXE 设备将 nvlnbp.sys 装载到内存中。
图 1-5 预引导服务流程的第 3 阶段
流程:
nvlnbp.sys 执行硬件检测并读取映像安全数据。
Nvlnbp.sys 通过 novell-zmgprebootpolicy 从“数据模型”请求“Novell 预引导服务菜单”配置。
Novell-zmgprebootpolicy 会返回“Novell 预引导服务菜单”配置。此时,如果用户按热键,就会显示 pxemenu.txt 中描述的菜单。
图 1-6 预引导服务流程的第 4 阶段
流程:
假设没有显示“Novell 预引导服务菜单”,设备就会通过 novell-zmgprebootpolicy 询问“数据模型”是否有指派的工作。
假设指派了工作,novell-zmgprebootpolicy 就会以执行预引导工作时要使用的配置文件的名称(如上图所示的 ZENworks Imaging 的 z_auto.cfg 和 ZENworks Third-Party Imaging 的 winpe.cfg)进行响应。
图 1-7 预引导服务流程的第 5 阶段
流程:
PXE 设备从 TFTP 服务器请求 pxelinux.0。
TFTP 服务器将 pxelinux.0 发送给设备。
图 1-8 预引导服务流程的第 6 阶段
流程:
Pxelinux.0 替换内存中的 nvlnbp.sys,并向 TFTP 服务器请求 ZENworks Imaging 的 z_auto.cfg(如上图所示)和 ZENworks Third-Party Imaging 的 winpe.cfg。
TFTP 服务器将 ZENworks Imaging 的 z_auto.cfg 文件和 ZENworks Third-Party Imaging 的 winpe.cfg 发送给设备。
图 1-9 预引导服务流程的第 7 阶段
ZENworks Imaging 的流程(如上图所示):
Pxelinux.0 从 TFTP 服务器请求并接收 /boot/kernel。
Pxelinux.0 从 TFTP 服务器请求并接收 /boot/initrd。
Pxelinux.0 从 TFTP 服务器请求并接收 /boot/root。
Pxelinux.0 从 TFTP 服务器请求并接收 /boot/updateDrivers.tgz,但因文件(用于提供发行后软件更新)不存在而被拒绝。
ZENworks Third-Party Imaging 的流程:
Pxelinux.0 向 TFTP 服务器请求并接收 /boot/preboot.0。
Pxeboot.0 向 TFTP 服务器请求并接收 /boot/bootMgr.exe。
引导管理器装载 /boot/bcd。
引导管理器最后接收并装载 /boot/boot.sdi 和 /boot/winpe.wim。
图 1-10 ZENworks Imaging 的预引导服务流程的第 8 阶段
ZENworks Imaging 的流程:
在设备上装载并运行 SUSE® Linux Enterprise Server (SLES)。
ZENworks Imaging Engine (img) 请求指派的预引导服务工作细节并执行该工作。
该映像存放在设备上,并会自动重引导。
图 1-11 ZENworks Third-Party Imaging 的预引导服务流程的第 8 阶段
ZENworks Third-Party Imaging 的流程:
在设备上装载并运行 WinPE 分发包。
Novell ZENworks Third Party Imaging 实用程序请求指派的预引导服务工作细节并执行该工作。
该映像存放在设备上,并会自动重引导。