PXE

1. PXE 服务

预启动执行环境 (PXE) 技术是由英特尔,建立了通用和一致的一组预引导服务启动固件内创建的标准。最终目标是使客户端计算机从网络进行引导,并从服务器接收网络引导程序 (NBP)。

PXE 服务器实现的 Windows 部署服务分为两个部分: PXE 服务器 (WDSPXE) 和 PXE 提供程序。WDSPXE 包含核心网络功能,并支持插件的界面。插件称为"PXE 提供程序",它们可以由 Microsoft 或独立软件供应商开发了。提供程序使您能够同时利用核心的联网 PXE 基本代码附带 Windows 部署服务开发单独的 PXE 解决方案。此 PXE 实现使您可以执行下列操作:

  • 更改提供程序(部署服务器) 上,默认情况下安装的 PXE 提供程序是 BINLSVC。您可以从服务器上卸下 BINLSVC 并将其替换为自定义的提供程序。请注意 BINLSVC 不安装传输服务器。

  • 运行在一台服务器上的多个提供程序而不是不必两个 PXE 侦听器 (每个都有其自己的应用程序逻辑) 在网络上可以使用两个或多个应用程序逻辑的网络上有一个 PXE 监听器。

WDSPXE 维护提供商列表,并提供程序的顺序将决定如何处理客户端请求。这意味着当收到 PXE 请求时,Windows 部署服务服务器将列表中第一个提供程序手动请求。该提供程序有机会来回答。根据来自该提供商的响应,请求可能会转发给下一个提供程序列表中,依此类推。注意: 可以使用 WDSPXE 注册它将提供程序添加到列表。有关详细信息,请参阅"PXE 提供程序是注册的"部分中的Windows 部署服务注册表项主题。

2. BCD 存储

Microsoft 已完全 reengineered 以满足不断增加的复杂性和多样性的现代硬件和固件的 Windows Vista 的引导环境。一个新的方面是包含引导配置数据 (BCD) 新固件无关的数据存储区。BCD 存储定义了如何配置启动菜单。存储区是命名空间 BCD 对象和容器元素包含所需的加载 Windows 或运行其他启动应用程序的信息。在物理上,BCD 存储是注册表配置单元格式的二进制文件。该文件及其相应的.wim 文件与具有相同的文件名。这些 BCD 存储驻留在包含引导映像 (例如,RemoteInstall\Boot\ <arch> \Images\Boot.wim 和 RemoteInstall\Boot\ <arch> \Images\Boot.wim.bcd) 的文件夹中。有关 BCDs 的详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID = 110353并引导配置数据编辑器常见问题问题 (http://go.microsoft.com/fwlink/?LinkID = 65818).

启动管理器将 BCD 存储读入一套引导项,描述了操作系统的系统和工具,可以启动。引导项包含的 GUID,要启动的应用程序和应用程序的 BCD 元素的列表。这是所有保留在内存中后启动管理器读取。结果是,BCD 元素列表中包含有关引导项 (其应用程序路径、 操作系统路径和说明) 的相关信息。

有通用的引导菜单中显示任何可用操作系统的启动设置。这些设置如下所示:

  • 常规引导管理器设置如超时值 (其后默认操作系统自动选定的时间段)。

  • 调试器与启用加载程序在调试相关的设置。

  • 有关从 RAMDISK,启动 Microsoft Windows 预安装环境 (Windows PE),如 Boot.sdi 文件的路径的设备选项。

这些选项定义在每个体系结构 BCD 存储中,位于 RemoteInstall\Boot\ <arch> \Default.bcd。每个启动映像都在 BCD 存储作为可用 Windows 引导加载程序选项,并在服务器上的每个引导映像有相应的 BCD 存储包含引导加载程序项 (其中介绍了如何引导该特定图像)。

体系结构特定 BCD 存储 \Tmp 文件夹中创建。清理线程将删除在指定间隔 (默认间隔是每隔 24 小时) \Tmp 文件夹的内容。下列规则适用:

  • 当前的 (使用中) 体系结构特定 BCD 存储不清除此过程。

  • 以前的活动的 BCD 存储不立即清除。

这有助于您避免在其中客户机从网络引导并被转交给拿起 FileA 的方案。同时,在服务器上的更改已触发创建新文件,FileB。FileA 将被删除。客户端尝试下载 FileA 并将失败,因为该文件已被清除。出于此原因,清理后删除以前的活动的文件。

BCD 存储物理结构

有四个可能的类的客户端计算机,所以 \Tmp 文件夹中创建四个 BCD 存储:

  • 基于 x86 的此文件包含 \Boot\x86 文件夹中的 Default.bcd 文件,并且所有引导映像 BCDs \Boot\x86\Images 文件夹中。

  • 基于 Itanium 的此文件包含 \Boot\ia64 文件夹中的 Default.bcd 文件,并且所有引导映像 BCDs \Boot\ia64\Images 文件夹中。

  • 基于 x64此文件包含 \Boot\x64 文件夹中的 Default.bcd 文件,并且所有引导映像 BCDs \Boot\x64\Images 文件夹中。

  • 基于 x86 和基于 x64(如果您运行这对应于WDSUTIL /set-server /DefaultX86X64ImageType: 两个)。此文件包含从 boot\x86 文件夹和所有引导映像的 \Boot\x86\Images 和 \Boot\x64\Images 文件夹中的 BCDs 的 Default.bcd 文件。

构造 BCD 存储的命名约定是,如下所示:体系结构。{RandomGUID}.bcd (例如, x86。 {05FF3388-7 D 71-46A1-AE8A704480979281}.bcd)。GUID 可确保任何新生成的 BCD 存储区不会干扰或覆盖现有的 BCD 存储。当前没有活动的客户端使用的旧 BCD 存储保留 24 小时 (以确保它们不是要使用的启动响应速度很慢的客户端仍将继续)。BINLSVC 然后删除它们。如果调试跟踪处于活动状态,您可以查看当前活动的 BCD 存储,在 Windows 部署服务服务器的调试日志中的每个体系结构: %windir%\tracing\wdsserver.lo


3. Server 设定

3.1 如果WDS和DHCP在同一台机器上,只要在 WDS DHCP 选项上选择勾选不监听67 和60 安装PXE


3.2 WDS和DHCP不在同一台,WDS DHCP上只有勾选不监听67

      然后设定 DHCP 上 60 PXE的值为 PXEClient

wKioL1MwA-_T-Wz9AAAQzfi6ZnA712.png

    DHCP Sever 如何添加 60 选项:

netsh>dhcp
netsh dhcp>server \\<server_machine_name>
netsh dhcp>add optiondef 60 PXEClient String 0 comment=PXE support
netsh dhcp>set optionvalue 60 STRING PXEClient
netsh dhcp>exit