Windows 2003部署软件( 三 )



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网络应用的管理 。

推荐阅读