分类: WINDOWS
2007-02-13 10:16:52
Microsoft 以前曾提供过由 Windows 部署团队制作的两个版本的部署工具。第一个版本以 deploy.cab 文件的形式发布,多年来一直随 Windows CD 提供。其中包含多种文档和工具,例如用于创建无人参与安装文件的“安装管理器”,
以及用于进行部署前桌面准备工作的 Sysprep 工具。部署工具的另一个版本是 OEM 预安装工具包 (OPK),专门为满足 OEM 系统制造商的需要而设计,并只向他们提供。这是 Windows® PE 最初的分发方式。Windows Vista™ 采用新版本的 OPK,但这一新版本仍只提供给 OEM。
对于大多数其他 Microsoft 用户来说,尽管他们中的一些人在 Windows XP 时期未能获得 Windows PE,但幸运的是这种情况将不会持续下去,他们将可以使用一种与 OPK 十分类似的工具包,即 Windows 自动安装工具包 (WAIK)。当 Windows Vista 上市后,可在 免费下载 WAIK,其中包括以下组件:Windows PE 2.0、Windows 部署服务和 ImageX,Windows 系统映像管理器是我以前从未提到过的一种工具,它可以创建用于实现自动安装的 unattend.xml 文件。此外,WAIK 中还包含所有工具的完整文档。
请注意,获得 WAIK 的推荐方法是从 microsoft.com/desktopdeployment 下载完整的 Business Desktop Deployment Solution Accelerator (BDD),其中不仅包括 WAIK,还包括 User State Migration Tool (USMT) 和 Application Compatibility Toolkit (ACT)。BDD 中还包含用于成功部署 Windows Vista 的其他工具和指导。
我曾在 TechNet 杂志 2006 年 11 月刊中深入地探讨了 Windows PE 2.0,所以在此不再赘述,只想说明一下 WAIK 将提供用于 Windows Vista 的新版 Windows PE 的官方发行版本。了解 Windows PE 是很重要的,因为 WAIK 中的所有其他工具要么以某种方式使用 Windows PE,要么与之配合使用。您可以在找到我关于 Windows PE 2.0 的文章。
在上期专栏中,我花费了大量时间介绍 Windows 映像 (WIM) 文件格式。(请参阅 microsoft.com/technet/technetmag/issues/2006/12/desktopfiles。)现在来看一下 ImageX,这是一个小巧但功能强大的命令行工具,它使 Windows Vista 的内置映像成为可能。在设计 ImageX 时,我们曾经考虑过创建基于 GUI 的工具,但由于映像过程的自动化是一个关键的设计要素,因此最后决定侧重于命令行。要查看 ImageX 的命令行选项,请参见图 1。
我稍后要介绍的 Windows 部署服务 (WDS) 包括一个轻量的 GUI 工具,可以轻松地捕获映像,但并不具备 ImageX 的全部功能。特别要注意的是,ImageX 的用途是为实现 Windows PE 下的部署而捕获映像,并基于此设计思想进行了测试。其设计初衷并非用于“实时”捕获正在运行的 Windows 系统的映像。
如果您熟悉其他的系统映像工具,那么就会对 ImageX 有一定程度的了解。其设计旨在简化工具的使用,使您能够轻松捕获和应用映像,它还提供了以前常用的部署工具中经常缺乏或不完善的关键功能。我稍后会讲到一个例子,来说明 ImageX 能够简单且透明地将映像作为本地文件系统的一部分来装载,使您可以在现有映像中查看、修改或删除文件。
ImageX 提供了一些映像操作开关,如 所示。我准备找几个特定命令来更深入地进行说明。
Capture 命令相对好理解一些,主要应记住一点,那就是对于每个 WIM 只能使用一次 Capture 命令。由于一个 WIM 文件就是一次文件捕获,您可以捕获整个卷 (C:),也可以仅捕获一个目录 (C:\Test)。在应用映像时也是如此,可以将映像应用于一个目录(即使已经捕获了整个卷)或卷的根目录(更常见)。如果 WIM 中已经存在一个卷映像 ,可使用 append 命令来继续添加。Apply 命令也相对较为简单,仅仅在应用多个 WIM 文件时才会变得复杂。delete 命令可用于删除对某个特定卷映像的引用,但为了彻底删除该映像的数据,必须使用 export 命令来创建一个不含这些数据的新 WIM(这意味着,如果要通过删除剩余数据来减小映像的大小,则必须使用 export 命令)。您可以将 export 视为类似于碎片整理程序或合并程序的工具,用来将卷映像组合到一个或多个 WIM 文件中,或将其导出到自身完全独立的 WIM 文件中。ImageX 还提供了以下映像编辑开关:IMAGEX /MOUNT、IMAGEX /MOUNTRW 和 IMAGEX /UNMOUNT。
如上所述,产品团队从一开始就在映像工具和格式中集成了编辑功能。启用编辑功能后,格式和工具允许用户根据需要复制文件、应用服务包、添加/删除文件或独立程序,或者从映像中添加/删除数据(甚至装载和修改注册表)。映像的维护始终是关注的重点。
您可以将装载映像的过程视为将 WIM 文件加载为虚拟目录的过程。如果您对它们很熟悉,它其实更像是一个卷装入点,用于将整个卷装载到另一个卷中的某个目录(例如,使 F: 显示为 C:\DriveF)。您也许用过类似的 Microsoft® Virtual CD 工具或其他 ISO 装载工具,它们可以将 ISO (CD) 映像装载为本地驱动器。同样地,ImageX 也可以将 WIM 文件作为一个覆盖段而装载到某个目录之上。您可以创建目录,然后使用 mount 命令在目录之上覆盖指定的卷映像,就像在此处应用过一样。
然而,与 Virtual CD 工具不同的是,即使 WIM 映像位于网络共享位置或可移动媒体中,您仍然可以装载。当然,这样做可能会限制编辑能力,光学媒体(CD 或 DVD)上的 WIM 通常在只读模式下才可以编辑。如果在读/写模式下编辑,您每次只能在一个 WIM 中编辑一个卷映像,这样在卸载时才可以正确地锁定并安全地更新文件。
您可以只读 (/mount) 或读/写 (/mountrw) 模式装载映像。使用读/写模式时,您对于映像所作的所有修改都会暂时缓存起来(它们不会立即生效),直到您运行带有 /commit 选项的 /unmount 命令时,这些更改才会永久地保存到 WIM 文件中。如果在更改后决定不保留更改内容,您还可以在卸载映像时放弃这些更改,而不进行提交。提交或删除操作必须针对缓存中的全部内容,在 WIM 文件装载期间的所有写入内容要么全部提交,要么全部放弃。
此处还有一个特别需要注意的地方。就像 delete 命令一样,当您使用读/写功能编辑 WIM 时,WIM 文件本身的文件数据并没有完全擦除或清除,这些文件附加到 WIM 文件的结尾处,而卷映像中先前的引用被更新过的数据所代替。这意味着如果您添加了一个 5MB 的新文件来替换同等大小的已有文件,您的映像会增加,增加的大小等于新文件在压缩之后的大小(即 5MB 或更小,取决于所用的压缩类型)。要从 WIM 中删除旧数据(如果要压缩映像),您将需要使用 /export 将卷映像导出到一个全新的 WIM 文件中。
如果您阅读了我在 TechNet 杂志 2006 年 11 月刊中对 Windows PE 2.0 的探讨,就会想到它支持从 WIM 引导。引导时会使用驱动程序来读取 WIM 文件,这与 ImageX 相类似。但 ImageX 的支持功能专供设计时使用,而 WIM 引导功能是只读的,专供 Windows PE 使用。因此虽然它们很相似,但其驱动程序和实现形式各不相同。
除 ImageX 工具外,Microsoft 还提供了正式文档化的 API,即 WIMGAPI,它完全支持可以捕获、应用或修改 WIM 文件的映像工具。因此如果第三方要添加映像支持或替换现有映像基础结构,都可通过使用 WIMGAPI 来实现。此 API 是 WAIK 的一部分,因此与其一起分发。
新安装引擎基于映像格式而设计。其核心部分更像以前的“最小化安装”或“欢迎使用 Windows”,在从 Windows 安装 DVD 的 install.wim 安装映像之前,它会询问唯一安装和配置系统所需的基本问题,同时处理磁盘配置。新安装引擎的主要目标是能够手动安装 Windows。我们预见到会有许多 OEM 和企业客户使用 ImageX 进行实际部署。
此时,您可能会问为什么我没有探讨远程安装服务 (RIS)。RIS 也是我在 Windows 部署团队开始工作时接手的。RIS 最初随附于 Windows 2000,然后又出现在 Windows Server® 2003 中,它使用“预引导执行环境”(PXE) 来将计算机引导到可以完成基本向导并且可以进行 Windows 安装的程度,这一切都是通过网络实现的。
RIS 最大的一个问题在于其非常脆弱。RIS 最初只有 Windows 2000 Professional 可以支持,到了 Windows Server 2003 时期,它扩展为支持 Windows 服务器版本。随着串行 ATA (SATA) 存储控制器和 GB 以上级别 NIC 的涌现,要在 RIS 中保持最新的驱动程序始终是困难重重。此外,RIS 不支持许多 Windows 所支持的语言环境,这意味着使用本地化键盘来安装本地化版本的 Windows 会非常困难,尽管这并不是不可能的。Windows 部署服务专用于将 Windows 安装和 RIS 组合在一起,即实现由 PXE 启动的 Windows PE 引导,从而允许您通过网络来部署 WIM 文件。
WDS 不仅可以在即将发行的代码名为“Longhorn”的 Windows Server 中使用,而且也可以作为更新版本安装在 Windows Server 2003 上。这意味着 WDS 既可以从 Windows Server 的早期版本部署 Windows Vista,又可以部署 Windows 的早期版本。事实上,WDS 不仅会与 RIS 配合工作,要使它进行工作也必须安装 RIS。这是因为它需要将 RIS 基础结构更新为能够与 WDS 兼容,同时它也提供了新的 WDS 基础结构。
WDS 作为 RIS 的升级为客户提供了良好的迁移路径,使客户能够在继续使用 Windows 早期版本的同时开始部署 Windows Vista。此外,它还提供了比 RIS 更好的管理工具,可以更加轻松地将新映像添加到服务器中。此外,它还提供了可插入式 PXE 框架,这意味着第三方 PXE 服务器可以集成进来,并指定代替 WDS 来应答特定客户的 PXE 请求。我们过去经常会收到要求 RIS 实现这种功能的请求,而在那时我们没能提供这样的 RIS。
除最初作为可在 Windows Server 2003 上安装的用于更新 RIS 的组件外,WDS 还将作为 Windows Server“Longhorn”产品的集成组件发布。Microsoft 目前还计划将 WDS 功能包含在 SMS(称为“System Center Configuration Manager”)未来的版本中。
WDS 通过提供 Windows PE 2.0 的 PXE 引导版本来运行。这一映像包含在 WIM 中(意味着减少了网络中传输的数据量),并通过网络引导到 RAMDisk 中。然后会使用包含过去 RIS 基本 OSChooser 应用程序功能的新客户端应用程序,在 Windows PE 下进行安装。
尽管 WDS 不支持 Windows XP、Windows 2000 或 Windows Server 2003 的原样 RIS 映像,但能够部署它们的 Sysprep 映像。WDS 还像以前的 RIS 一样集成到了 Active Directory® 中,但必要时,PXE 服务器无需 Active Directory 也可以运行。WDS 甚至可以从 PXE 以外的其他组件所引导的 Windows PE 启动,这些组件包括 CD、DVD 或 USB 闪存驱动器 (UFD) 等等。这是一个非常有用的功能,而 RIS 无法提供。
WDS 可以在三种有效的模式下操作,这取决于当前使用的 RIS:
传统 WDS 已安装了二进制文件,但将 OSChooser 作为引导机制。RIS 所包含的脚本安装和基于映像的安装工具 RISetup 和 RIPrep 仍然有效。
混合模式 可以使用每种引导机制,并且每种映像工具集和每种管理工具集都有效。
本机 没有 RIS 功能,只能使用 WIM 功能、Windows PE 引导和新的管理工具。请注意,这是计划在 Windows Server“Longhorn”中提供的唯一模式,它不包含任何 RIS 功能。
WDS 还实现了一个自定义客户端-服务器通信协议,结果,OEM 或企业客户理论上也可以建立自己的部署应用程序。
将 WIM 映像捕获到 WDS 服务器的过程与我曾介绍的 Sysprep 的情形几乎相同。区别在于,前者在最后一步中将引导到 WDS 捕获映像(一种用于帮助捕获客户端系统的 Windows PE 映像)并将其捕获到 WDS 服务器。
WDS 的核心组件如下:WDS 服务器服务、PXE 服务器、映像存储、通信协议、使用 Windows PE 映像的文件共享(需要引导)、WIM 映像(需要安装)和其他相关的管理文件。
WDS 经过专门设计,相对轻量,并提供与基于传统光学媒体的 Windows 安装几乎相同的体验(常常更快)。WDS 作为 RIS 更新版本的实现形式使您能够以恰当的方式逐渐替换 RIS,同时在组织中逐步部署 Windows Vista。同时也能在以前版本的 Windows 中,通过比 RIS 更简单快捷的方式完成上述工作。
WAIK 的最后一个组件是 Windows 系统映像管理器 (SIM)。如果熟悉以前版本 Windows 中的“安装管理器”,那么您应该对 Windows SIM 的概念有所了解。在该工具的帮助下,您可以针对无人参与安装文件完成一些任务。您可以轻松创建新的无人参与安装文件、编辑现有文件或根据指定的 Windows Vista 映像验证现有文件的设置。该工具还可以针对其中的 Windows Vista 特定 WIM 显示所有可能的配置选项,其中包括传统的无人参与安装选项,这些选项曾在 deploy.cab 所附带的帮助文件中有介绍。最后,Windows SIM 可以帮助创建分发共享和配置集,它们可用于将驱动程序、应用程序和更新通过无人参与安装文件添加到 Windows Vista 安装中。
Windows SIM 要求您必须以系统本地管理员的身份运行。打开 Windows SIM 后,您会看到五个窗格,如图 3 所示。
“分发共享”窗格位于左上方,显示了通过 SIM 添加的驱动程序和其他数据包。默认情况下没有装载“分发共享”,但您可以轻松地打开或创建。
“Windows 映像”窗格位于“分发共享”下面,显示了 WIM 中指定 Windows 卷映像的配置选项(组件和数据包)。请注意,每次只能装载 Windows 的单个卷映像(Windows Vista DVD 中的一个 SKU)。
中间的“应答文件”窗格显示了新的或现有 Windows Vista 无人参与安装文件中的配置选项,以及已装载 WIM 卷映像中的目录所定义的默认设置(潜在设置和配置)。
“属性”窗格位于窗口右上方,可用于编辑“应答文件”窗格中组件的各属性。
最后是位于底部的“消息”窗格,显示了更深入的反馈,包括 Windows Vista 无人参与安装文件(始终为 XML 格式)中原始 XML 的视图,以及与当前正在使用的配置集(“配置集”选项卡只在打开配置集的情况下包含数据)相关的有效输出和消息。
如您所见,WAIK 提供了一套非常强大的工具,可帮助您部署 Windows Vista。Windows 部署团队已经完成了一项伟大的工作,创建了一个工具集,可以使 Windows Vista 比以前任何版本的 Windows 都更容易部署