桌面文件Windows 部署服务 101

Wes Miller

目录

Windows Server 2003 中的 WDS
Windows Server 2008 中的 WDS
做出选择
注意事项
WDS 入门
捕获映像
捕获 101
映像迁移
无人参与安装

上个月的专栏回顾了 Microsoft 基于预引导执行环境 (PXE) 的部署工具的历史。本月,我们将深入研究 Windows 部署服务 (WDS),具体讨论随 Windows Server 2003 提供的版本以及随 Windows Server 2008 提供的更新版本

。之后,我向您演示使用 WDS 运行。

WDS 最适合被视为重新编写的远程安装服务 (RIS)。尽管它们共享一些关键组件,而且实际上 Windows Server® 2003 中 WDS 版本的旧模式在功能上与 RIS 相同,但以本机模式运行与以 50% 的混合模式运行的 WDS 实际基础结构都是全新的。

Windows Server 2003 中的 WDS

WDS 随着 Windows Vista® 的发布一共问世。这一步骤是非常必要的,因为 Windows Vista 安装程序是使用 Windows® 映像格式 (WIM) 体系结构彻底重新设计的,使得 RIS 无法部署 Windows Vista(甚至是 Windows Server 2008)。因而将 WDS 作为带外版本,供运行 Windows Server 2003 SP1 的客户下载。在 SP2 中,RIS 已完全被 WDS 所取代。

您应记住,由于 Windows Server 2003 中的 WDS 完全向后兼容,因此当您在 Windows Server 2003 SP2 系统中安装 WDS 时,不必移到本机模式。您可以继续在旧模式(做为 RIS 服务器履行功能)或混合模式下运行,允许启动 WDS 或 RIS。

除了能够部署 Windows Vista 和 Windows Server 2008 以外,以本机模式或以 50% 的混合模式运行的 WDS 还具有若干其他功能。WDS 使用 Windows PE 作为其启动预安装环境,而不是利用我上月讨论的 Windows 内核模式安装引擎和传统的安装程序核心 (technet.microsoft.com/magazine/cc645015),而且它部署基于 WIM 的映像,而不是使用基于 RISetup 或 RIPrep 的安装。这样部署得更快、更简单且更可靠。

此外,由于 Windows PE 可以显示与 Windows 完整安装相同的字符集,我上月介绍的许多限制(例如,需要使用基于“美国国家标准协会”(ANSI) 的字符)已不复存在。

另外,WDS 还获得了 RIS 不具备的几个工具(用于协助管理的 Microsoft® 管理控制台 (MMC) 管理单元)以及极其全面的命令行配置工具(使配置功能远远超过 RIS)。

由于旧模式和混合模式均允许部署 Windows 基于 RISetup 和 RIPrep 的映像,因此您需要牢记一件事情。RIS 以前一直使用名为单实例存储 (SIS) 的组件来优化磁盘上的映像存储。之后随 Windows Storage Server 2003 提供的 SIS 利用了一项名为 Groveler 的服务,它在 RIS(以及 WDS)服务器的后台运行,用于查找相同的文件。如果任何文件的大小和哈希都匹配,则 SIS 会将副本复制到其自己的 SIS Common Store 文件夹中,然后创建指向其找到的每个原始版本的硬链接。

SIS 旨在最大程度地减小对处理器利用率的影响,同时节省大量存储空间。这一出色的概念由 RIS 首次使用,之后广泛应用于 Windows Server 平台。但之后的 WDS 不再使用 SIS。

由于 Windows Server 2003 中以本机模式运行的 WDS(并且常常是在 Windows Server 2008 上运行)利用 WIM 映像进行安装,因此它具有其自己的压缩以及(更重要的是)自己的单实例文件存储模型,它根本不使用 SIS。“映像存储”将 RIS 使用的存储模型替换为 WDS 基于 WIM 的新设计。如需 SIS 的详细信息,请访问 go.microsoft.com/fwlink/?LinkId=120302

Windows Server 2008 中的 WDS

在 Windows Server 2008 中,WDS 已成为 Windows Server 2003 中功能的扩展集和子集。它现在可以使用传输服务器在独立模式下通过多播部署映像,传输服务器是一种全新的简单文件传输协议 (TFTP) 服务器,它的性能更好、支持基于可扩展固件接口 (EFI) 的 x64 系统,并具有增强的安装指标报告。我将在下月的专栏中对此加以介绍。

请注意,Windows Server 2003 中的 WDS 有一个功能在 Windows Server 2008 中已不再提供,即旧安装支持。不再提供部署 RISetup/RIPrep 映像或使用旧 RIS OS Chooser 启动安装的功能。

做出选择

自 Windows Server 2008 发布后我经常会遇到的一个问题是:“我应该使用哪一个版本的 WDS?”答案取决于您是否部署的是早于 Windows Vista 的版本,如果是,还要看是否已经准备好从基于 RISetup 和/或 RIPrep 的映像过渡到明确使用基于 WIM 的安装。

即使在 Windows Server 2008 中,WDS 也始终可以将 Windows 部署回 Windows 2000(如果它在 WIM 映像中),而且可以使用多播完成此操作。因此,如果您要立即从 RIS 过渡到 WDS,想想您基础结构中的 Windows Server 2008,如果您愿意从基于 RIS 的映像迁移到基于 WDS 的映像,那么迁移到 Windows Server 2008 中的 WDS 可能对您比较适合。

还可以在 Windows Server 2003 系统本身从 RIS 迁移 WDS(当您安装 SP2 时,基本上就会发生这一情况),再过渡到基于 WDS 的映像。然后,您只需升级到 Windows Server 2008 WDS 即可。

但我并不建议使用这种模型。与 2008 之前的许多 Windows Server 版本一样,Microsoft 建议从一个版本的 Windows Server 迁移(比照就地升级)到另一版本的 Windows Server。

正如我之前提到的,对于您的基础结构而言,考虑使用 x64 版本的 Windows Server 2008 可能比 x64 版本的 Windows Server 2003 更有意义。如果确实要进行这种转换,与就地升级相比,对 WDS 执行从 Windows Server 2003 到 Windows Server 2008 的服务器到服务器迁移将相对容易些,而且更为可靠。

注意事项

您在部署 WDS 时有几点需要牢记。请注意,它们实际上并不是 WDS 的新要求(RIS 也有许多相同的注意事项),但无论是构建单 WDS 服务器还是整个基础结构均应将其考虑在内:

权限 当您管理 WDS 服务器时需要牢记两个主要项目。必须在 Active Directory® 中对 WDS 服务器授权,就象您对 RIS 所做的处理一样。为此,您必须是林根域的域管理员(企业管理员)或者您必须被委派了相应的权限。要管理您的 WDS 服务器,您需要是域管理员,当然,您还必须是 WDS 服务器本身的管理员。

虚拟化 如在 Microsoft Virtual PC 或 Virtual Server 下虚拟化的 Windows Server 2003 或 Windows Server 2008 实例上运行,并与安装相同 Virtual PC 或 Virtual Server 的客户端 PC 通信,可能会在开始 PXE 引导时出现争用,导致客户端的速度非常缓慢或者挂起。建议您虚拟化客户端或服务器,但不要两者同时虚拟化,尤其是在同一主机系统上。从个人角度来讲,我不建议虚拟化要用于生产的 WDS 服务器,原因如下所述。

其他服务 和 RIS 一样,WDS 与其他生产服务的配合并不能始终保持令人满意。具体来说,在运行 Microsoft Exchange Server、Systems Management Server (SMS) 和 System Center Configuration Manager (SCCM) 的生产系统中,我曾经见过所运行的 RIS/WDS 出现问题。

一般而言,如果您将 WDS 用于大多数客户端的生产,我建议让 WDS 成为您服务器上的唯一角色。但 WDS 并不是只能有这一种状态,您应认真考虑您是否应混合 Windows 服务器产品的角色并在部署前对其进行测试。

低或高延时链路 与 RIS 一样,WDS 不适合在低带宽连接或高延时连接(如卫星链接)条件下使用;PXE 握手可能会出现问题,而且下载映像可能很费力(如果有)。

WDS 入门

WDS 的更多信息

首先,您必须决定是要在 Windows Server 2003 上还是 Windows Server 2008 上使用 WDS。如果使用 Windows Server 2003,我建议采用 SP2,WDS 是它自带的一个选件,而不是使用 SP1 和 Windows 自动安装工具包 (WAIK) 中之前提供的可选 WDS 下载项。

无论是哪个版本的 Windows Server,您都希望构建自己的服务器系统。您应使用高质量网络接口卡 (NIC),速度至少能够达到 100Mbps 或者更快。请不要使用 NIC teaming,因为 WDS 的 PXE 基础结构在使用 NIC teaming 时可能会出现问题。请注意,如果您使用 Windows Server 2008,则可以将 WDS 安装在两种模式的 Windows Server 2008 上(Server Core 安装或完整安装)。

WDS 是作为一个可选组件(就象之前的 RIS)安装在 Windows Server 2003 上的。您可以在安装操作系统期间或之后安装 WDS,方法是:运行“添加/删除程序”|“添加/删除 Windows 组件(或者从命令行运行 sysocmgr.exe)。在 Windows Server 2008 中,WDS 是作为一个角色安装的,可通过初始配置向导(单击“添加角色”|“下一步”| 并选择“Windows 部署服务”)、通过服务器管理器(与初始配置向导的步骤相同)或从命令行运行 ServerManagerCmd 来安装 WDS。

安装完 WDS 后,您需要对其进行配置。在 Windows“开始”菜单下,转到“管理工具”并选择“Windows 部署服务”。MMC 启动后,右键单击您的服务器,然后从菜单中选择“配置服务器”以启动配置向导。

如果要在 Windows Server 2003 上进行安装并升级现有 RIS 服务器,您将需要指定现有 RemoteInstall 目录,以便可以将旧安装升级到混合模式。在这种情况下,应确保 RemoteInstall 目录不在系统分区上,以免会影响性能。

图 1 显示了在配置向导完成之前 Windows Server 2008 上的 WDS 控制台。图 2 显示了 Windows Server 2008 上 WDS 配置向导的“欢迎”页面。图 3 显示了 WDS 配置向导的 PXE 配置步骤。在这一步骤中,您可以指定服务器是应响应任何客户端(对于初始扩建特别有用)、仅响应已知的客户端计算机(已在 Active Directory 中预置的计算机)还是响应所有客户端(以及它是否应选择性地保留所有未知客户端,以便管理员可以选择进一步的行动方案)。

fig01.gif

图 1 已安装但尚未配置的 WDS

fig02.gif

图 2 WDS 配置向导

fig03.gif

图 3 为 PXE 服务器选择响应策略

图 4 向您显示了 Windows Server 2008 上配置完整的 WDS 服务器(尚未安装任何映像),并且其“属性”页面已打开。如果您使用的服务器是动态主机配置协议 (DHCP) 服务器,确保将“DHCP 选项 60”设置为 PXEClient 并将 WDS 设置为“不侦听端口 67”。这样,您的 WDS 服务器即可在 PXE 发现过程中跳过某个步骤(如我在上月的专栏中所述)。

fig04.gif

图 4 Windows Server 2008 上配置完整的 WDS 服务器

此向导完成后,您可以添加新的映像。在以混合模式或本机模式运行的 WDS 服务器中,可以添加两种映像:

  • 引导映像:这些映像包含 Windows PE 2.x,通常是从 Windows Server 2008 或 Windows Vista SP1 安装 DVD 中复制下来的。请注意,如果您使用多播,则对于引导映像,您将需要使用 Windows Server 2008 中的 \Sources\Boot.wim 文件(即使您部署的是 Windows Vista 或旧操作系统也是如此)。引导映像通常包含 Windows PE、Windows Setup.exe 以及其他依赖项。
  • 安装映像:这些映像由 Windows OS 映像组成,通常是 Windows Vista 或 Windows Server 2008 中的 \Sources\Install.wim 文件。

要添加默认引导映像或默认安装映像的步骤几乎是相同的。首先都要右键单击映像类型,然后选择添加该类型的映像。

对于安装映像,您需要指定映像组的名称(假设 Windows DVD 上的默认 WIM 含有多种 OS)。然后浏览到要添加的相应 boot.wim 或 install.wim 并单击“打开”。对于安装映像,您随后可以取消选中不想添加到 WDS 服务器中的任何卷映像(OS 映像)。最后,您可以使用这些默认映像以 PXE 方式安装客户端。

捕获映像

为了创建自定义 OS 映像,您需要创建一个捕获映像(即 Windows PE 映像,旨在允许您将 Windows 系统捕获为 WIM 映像)。最简单的做法是使用之前安装的 boot.wim 映像。

右键单击所需的映像,然后单击“Create Capture Boot Image”(创建捕获引导映像)。指定要用于映像的名称和说明,并指定一个位置,部署捕获映像时如发生网络连接问题,会在该位置保存 .wim 文件的本地副本。然后完成向导并单击“Finish”(完成)。

接下来右键单击 WDS MMC 中的 Boot Image 文件夹,并单击“Add Boot Image”(添加引导映像)。与先前一样,按照向导中的说明执行操作。完成后,您就可以捕获 Windows 安装映像。

捕获 101

在捕获操作系统映像之前,您必须安装 Windows 并确保其包含所有需用的应用程序、自定义和更新。下一步要做的就是在您的系统中运行 Sysprep;您只能从使用 Sysprep 准备的系统中捕获 Windows 安装映像。您必须指定有效的本地位置来保存新映像(以避免可能的损坏)和 *.wim 文件扩展名。

在配置完系统并将正确版本的 sysprep.exe 复制到系统之后,您必须执行下列步骤:

  1. 使用参考计算机上的命令提示符切换到 sysprep.exe 所在的目录。
  2. 启动 Sysprep(也可以双击 sysprep.exe 并手动指定选项)。在运行 Windows Vista 或 Windows Server 2008 的计算机上,运行命令 sysprep /oobe /generalize /reboot。在运行早期版本 Windows 的计算机上,运行 sysprep -mini –reseal –reboot。
  3. 计算机重新启动后,PXE 会对其进行引导(此过程可能因客户端系统而异)。
  4. 从引导菜单选择 WDS 捕获映像,然后单击“Next”(下一步)。
  5. 为映像选择驱动器以及名称和说明。
  6. 如前所述,将仅显示已执行过 sysprep 的系统。这是设计要求,无法更改。
  7. 单击“Browse”(浏览),然后浏览到要存储捕获的安装映像的本地文件夹。所选的位置可以是映射的网络驱动器。
  8. 选择“Upload image to WDS server”(将映像上传至 WDS 服务器)。
  9. 键入 WDS 服务器的名称,然后单击“Connect”(连接)。
  10. 从“Image Group”(映像组)列表中,选择要将映像存储在其中的映像组,然后单击“Finish”(完成)。

该映像现在已准备好从 WDS 服务器进行部署。如果您熟悉 RIS,可能已经注意到我并没有实时捕获此 Windows 映像。WDS 要求被捕获系统脱机。

在 RIS 中,RIPrep 可以捕获(实际上是要求)联机系统。该过程非常脆弱。我认为您将会找到相对简单且更为稳定可靠的 WDS 捕获过程。

映像迁移

如果您一直都在使用 RIS,那么您已经部署了一些映像。对于基于 RISetup(脚本式安装)的映像,这已经是终点。但您可以将 RIPrep 映像迁移到基于 WDS WIM 的映像。实际上,WDS 甚至允许您通过 WDSUtil 迁移映像(我将在下个月对此进行更为详细的说明)。

只有您在不想丢失的映像中投入了大量的时间时,我才会建议这样做。此过程效果很好,但我听说在转换期间发生了一些错误,这通常意味着您必须从头开始重建映像。

无人参与安装

用我先前的方法创建映像后,您可以手动进行安装。对于自动化程度更高或完全自动化的安装,您需要使用两个无人参与的安装文件。WDS 本身需要一个应答文件(unattend.xml,存储在 WDS 服务器的 \RemoteInstall\WDSClientUnattend 目录下),用于自动化 WDS 安装过程。第二个文件是实际映像无人参与文件。对于 Windows Vista 或更新版本,此为 unattend.xml 文件。对于早期版本的 Windows 映像,此为 sysprep.inf 文件(存储在 $OEM$ 目录结构中或存储在每个映像目录的 \Unattend 下)。此文件用于在 WDS 完成后自动执行 Windows 的实际安装。

要创建 WDS 无人参与文件,请使用 WAIK 为 WDS 创建一个 unattend.xml 文件。将此文件复制到 RemoteInstall 目录或子目录中。右键单击要对其使用此无人参与文件的安装映像,然后单击“属性”。在“客户端”选项卡中,请选择“启用无人参与安装”并提供之前指定的 unattend.xml 文件。

要为 Windows Vista 之前的映像创建映像无人参与文件,请将 sysprep.inf 文件复制到该映像的 $OEM$ 目录中,例如,D:\RemoteInstall\Images\Windows XP\SP2\$OEM$\$1\sysprep\sysprep.inf。对于 Windows Vista 映像,请指定要关联的映像,单击“属性”,然后在“常规”选项卡下,单击“允许在无人参与模式下安装映像”。然后指定要用于安装的 unattend.xml 文件。

至此我们已经完成了一半工作。本专栏为您介绍使用 WDS 运行。下个月,我将深入介绍 WDSUtil、映像存储细节以及多播的详细信息。之后我将深入探讨如何以及为何您会考虑在 WDS 之上构建自定义部署解决方案。目前请查看本专栏的“WDS 更多信息”侧栏。

Wes Miller 是位于德克萨斯州奥斯汀市的 CoreTrace 公司 (www.CoreTrace.com) 的高级技术产品经理。在此之前,他在 Winternals Software 公司任职,并曾在 Microsoft 担任项目经理。可通过电子邮件 technet@getwired.com 与 Wes 联系。

© 2008 Microsoft Corporation 和 CMP Media, LLC。保留所有权利;未经允许不得复制本文的部分或全部内容。