| 内容提要: 作为网络管理员, 经常要做的工作之一就是各种软件的部署, 包括系统软件和应用软件等。 在一个大范围的网络环境中, 靠拿安装盘进行本地安装的方法来部署软件, 既效率低、影响工作, 又可能出现失误, 因此在这种情况下常用的安装方式就是进行网络安装。 但是目前网络安装一般采用共享安装盘进行安装, 这种安装方式有两个 主要缺点:一是客户端必须已经与服务端联网, 否则无法访问共享资源, 比如一台没有任何系统的新机器就不能使用共享资源;二是即使在客户端连接了服务端的共享后, 在安装应用程序的过程中仍然要有管理员在场的随时参与, 否则一些安装选项不能决定, 安装过程也就无法继续。 所以管理员必须掌握一些行之有效的方法, 以便高效完成日常软件部属的工作。 为了解决软件网络中部署的问题, Windows Server 2003中提供了RIS和Installer两种技术, 前者是远程安装服务, 通过Windows Server为网络中的客户机提供的远程安装, 后者则是专门解决在Windows网络环境中发布应用软件的需求。 此外, Windows Server 2003还提供了快速部署变更的功能。 远程安装服务 远程安装服务(RIS)是Windows Server 2003内置的网络服务, 这种方法能够在域环境内使客户机通过“引导信息协商协议(BINL)”访问服务器, 并请求服务器为其提供, 而服务器在响应请求后就可以利用“简单文件传输协议(TFTP)”为客户机下传所需的安装文件。 同时RIS服务器采用“单实例存储(SIS)”技术, 可以保证在处理大量客户安装请求时, 不过多地占用系统资源, 从而为大网络内的软件部署提供了系统保障。 下面介绍具体的过程。 1.配置RIS服务器 和其他Windows服务一样, RIS服务的安装可以通过“Windows 组件向导”来完成, 安装过程中需要用到Windows Server 2003的光盘。 2.指定用户的权利 在Windows Server 2003这样的安全系统中, 任何一项工作的完成都要受到资源许可权限与用户权力的控制, 所以在安装RIS服务后, 还应该定义哪些用户可以在客户机上使用此服务来安装, 即需要指定用户的权力。 这主要有两项权力:一项是为网络添加计算机的权力;另一项是能够批量处理安装任务的权力。 如图1所示, 在域控制器的“Active Directory用户和计算机”中为用户分配这两项权力。  (1)指定添加计算机的权力 首先, 在“Active Directory 用户和计算机”管理器中, 用鼠标右击需要安装客户机的域或者组织单元, 如图2, 在弹出菜单里选择“委派控制(E)…”。 然后在“委派控制向导”里指定授权安装客户机的用户, 并分配给他们往域中添加计算机的权力, 如图2, 按照向导的提示完成操作。 
(2)指定批量处理安装任务的权力 分配了用户添加计算机的权力后回到“Active Directory 用户和计算机”管理器, 继续定义批量处理安装任务的权力。 再次如图1所示右击所需的域或者组织单元, 选择“属性(R)”, 在如图3的属性窗口里选择编辑组策略。  编辑组策略时, 系统会打开“组策略编辑器”, 在图4所示的位置, 鼠标双击“作为批处理作业登录”, 指定网络用户并定义策略设置。 可以通过“添加用户或组(U)…”按钮, 然后按照提示把将要在客户机上进行系统安装操作的用户添加到此策略中来。  3.准备安装程序 在客户机上安装前, 必须先在RIS服务器上为客户机准备其系统的安装程序, 以便客户机能够在安装时自动从服务器获得所需的源文件。 这一工作由RIS服务器提供的Risetup.exe服务器配置向导来完成, 这样可以把所需的源文件复制到服务器内, 当客户机安装时就可以通过网络传送了。 运行Risetup.exe程序, 就启动了“远程安装服务安装程序向导”。 之后进行下操作。 (1)设定客户机安装位置;(2)指定对客户机的响应;(3)定义此次要复制的源文件的位置;(4)指定文件夹名称;(5)安装说明信息。
4.制作启动盘 作为RIS的客户机, 除了要满足所安装的硬件条件外, 惟一的要求就是其网卡要支持预启动执行PXE技术, 只有这种网卡才能够配合RIS的功能。 所以网络中必须要选用这样的客户机, 一般有三种可能, 一是Windows Server 2003所支持的NetPC;二是普通PC安装了支持PXE技术的网卡, 而且网卡带有配套的网络启动芯片, 并且芯片的版本至少为1.0;三是普通PC虽然安装了PXE技术网卡, 但是没有网卡启动芯片, 或者芯片版本是Windows Server 2003所不支持的版本。 对于前两种情况的客户机由于具有Windows Server 2003支持的网卡启动功能, 所以只要连接了RIS服务器然后开机, 即可从网络启动并且自动向服务器请求系统安装, 而对于第三种客户机因为不能自动从网络启动, 所以管理员必须为他们准备一张RIS启动安装软盘, 供开机引导时使用。 制作RIS启动安装软盘的程序由3Com公司提供, 它能够模仿PXE芯片的引导过程。 Windows Server 2003的RIS服务器里包含了这个程序——Rbfg.exe。 访问RIS服务器的共享安装文件夹REMINST, 在REMINST/admin/i386中可以找到此文件。 运行Rbfg.exe, 并插入一张软盘, 即可制作出专门用于PXE远程安装的启动盘。 5.客户端安装 经过这些准备, 客户机就能够启动安装了。 初始引导界面类似图5所示, PXE系统会自动连接到DHCP服务器并向他请求客户的网络地址。 地址申请成功后, RIS服务器通过TFTP协议把客户安装文件传到客户机, 客户机进入“客户机安装向导”。 经过授权的合法用户输入正确的用户名及口令登录到域中后, 即可选择所需的系统进行安装了。 安装过程一般可以选择自动安装模式, 这种模式不需要管理员的参与, 能够自动完成接下来的安装过程。  这里还要强调, 客户机的网卡必须支持预启动执行PXE技术, 否则初始的引导请求不能连接成功, 安装也就无法继续。 如果想查看PXE网卡类型, 可以在运行Rbfg.exe程序的过程中按“适配器列表(L)”按钮, 检查自己的PCI网卡是否在所支持的列表中。 通过RIS技术安装客户机具有范围广、速度快的特点。 如果在RIS服务器准备时除了要自动为客户机安装系统文件外, 还希望把某些应用程序也一同安装到客户机, 则需要事先在一台客户机上安装准备好相应的和应用软件, 然后在此配置完成了的客户机上运行RIS服务器中的/REMINST/Admin/i386/Riprep.exe程序, 这个文件也是一个类似Risetup.exe的向导程序, 它会通过网络把此客户机中的系统和应用软件做成镜像, 保存到RIS服务器的REMINST共享中。 所谓镜像就是与原客户机里的系统一样的系统, 但是删除了表示原客户机身份的一些设置, 比如安全标识符SID、硬件驱动设置等。 这样当其他客户机通过RIS安装此镜像后, 根据机器实际情况重新生成SID和相应的硬件设置信息, 系统中就不但安装了也会包括复制来的应用程序, 这样应用和系统就一同安装了, 这种方法对于要求统一桌面环境的网络应用很有帮助。 快速部署新应用 除了在RIS安装准备时就准备好需要的应用软件外, 多数情况下, 具体的客户应用程序不一定是在安装时就已经决定了的, 而是根据用户使用的实际需求来安装的, 所以管理员还应该掌握另外一种能够通过网络来自动安装应用软件的方法, 以解决在日常工作中应用软件的快速部署问题。 Windows Server 2003所支持的Windows Installer就是这样一种实用安装工具。 Windows Installer采用实时安装技术, 能够通过域环境把软件推到客户机中, 从而实现应用程序的自动安装部署。 使用Windows Installer技术的安装程序首先要求打包成MSI格式, 这样才能够被Windows Installer支持。 现在Windows的多数软件安装文件都已经具有了这种格式, 而且微软的服务器资源工具包中也可以找到这种打包工具, 用来解决其他软件的打包问题。 安装程序要拷贝到服务器上的一个网络共享文件夹内。 下面介绍安装步骤。
1.指定配置 在“Active Directory 用户和计算机”管理器中, 鼠标右击域, 选择“属性(R)”, 在如前面图3所示的域属性窗口里选择编辑组策略, 打开组策略编辑器。 如图6, 在计算机配置和用户配置里都有“软件安装”项, 用于在域内部署软件。 如果软件要部署到域中的计算机里, 就在计算机配置里定义, 如果软件要部署给域中的用户, 就在用户配置里定义。  2.指定部署方式 鼠标右击“软件安装”, 选择新建程序包, 按照系统向导的提示进行设置。 首先通过“网上邻居”指定服务器上网络共享文件夹内事先准备好的MSI文件。 然后, 系统会询问软件部署的方式, Windows Installer提供“发布”和“指派”两种部署方式。 “发布”方式不自动为域内客户安装软件, 而是把安装选项放到客户机的“添加或删除程序”中, 供用户在需要的时候自主选择安装;“指派”方式则直接把软件安装到域用户的开始菜单程序组中。 “发布”方式一般用于给用户提供各种软件工具, 由用户按需选择安装或不安装;“指派”方式可用于软件的强制安装使用, 用户无权自行卸载软件。 对于已经部署的软件, 还可以通过高级选项来修改设置。 倘若管理员日后想取消程序的部署, 只要在组策略编辑器里把已经部署的相应软件删除, 就可以阻止客户对软件的继续安装, 甚至也可以选择把用户已经安装的软件自动卸掉。 3.客户端配置 部署完成后, “指派”的软件, 用户只要登录域后直接在开始菜单中即可找到并使用;“发布”的软件, 用户只要到“添加或删除程序”里选择“添加新程序(N)”就会看到, 如果希望安装, 按“添加”按钮即可。 此外, Windows Server 2003还提供了快速部署变更的功能。
部署变更 需要对程序加以变更的原因很多, 例如安全性升级和服务包、升级和功能增强或者企业范围的版本同步等。 一般来说, 管理更新是一件费用昂贵和错误丛生的工作。 对共享组件进行升级需要中止现有程序的运行, 因为这些程序的运行需要依赖于被升级的DLL。 在.NET出现之前, 没有任何办法在一个系统种安装同一个DLL的多个版本。 此外, Web程序在运行期间不能升级, 这就要求在安装一个升级时关闭服务, 甚至重新启动计算机。 Windows Server 2003提供了成熟的变更管理和部署特性。 这些简单的技术(例如文件复制)可以用来更新整个程序或者仅仅更新程序的一部分。 虽然技术更为复杂, 但是在使用上依然十分简单, 例如Windows Installer和能够自动升级的应用程序都允许用户根据需要调整变更管理过程。 在最简单的情况下, 如果在一台计算机上升级私有组件, 可以使用FTP或者XCOPY或者其他任何的文件管理工具把升级组件复制到私有目录中。 和以前整个系统都共享同一个DLL不同, 私有的程序件(private assemblies), 例如NET DLL, 可以放在一个应用程序所在的本地文件夹中, 从而只被这个应用程序独自访问。 程序件清单一般在编译EXE文件时生成, 可以告诉运行时版本检查程序搜索包含EXE文件本身的文件夹。 并不需要在Windows组测表或者全局程序件缓存(Global Assembly Cache, GAC)中注册一个经过升级的私有组件。 在任何情况下, 安装一个经过升级的私有程序件都不会干扰其他程序的运行。 甚至可以把共享程序件部署在客户机或服务器上, 而不会对依赖它们的可执行文件或者相同DLL的多个版本造成干扰。 GAC是程序件的集中存储库(EXE和DLL)。 因为每个程序件都有清楚的名称的明确的版本, GAC可以包含同一个程序件的多个版本。 可以用Windows Installer升级GAC中的程序件以及整个应用程序。 .NET Framework在Windows Explorer中安装了外壳缓存视图(Shell Cache Views)扩展, 以便能够浏览和编辑GAC。 Windows Server 2003还包括了命令行工具(gacutil.exe), 可以利用它编辑GAC。 升级还可以从客户端进行, 因为Windows Server 2003体系结构允许创建自动更新的Windows和其他应用程序。 可以让程序在下一次运行时, 自动从Windows Server 2003下载程序组件。 或者, 程序可以定期检查服务器上发布者的策略文件, 看看是否有更新版本的程序件可供使用。 点评 网络管理员应用上述技术, 就可以实现方便快捷的软件管理部署, 这种方法的优势在节点较多的网络中尤其明显。 这样既可以保证工作进度、减少配置成本, 又不影响工作质量、避免失误, 而且整个网络中的系统软件和应用软件都可以在管理员的掌控之中, 从而使管理员高效安全地实现对Windows Server 2003网络应用的管理。
|