SMS2003之软件分发

       软件分发是SMS 2003的一个重要功能,也是我们常用功能之一,使用SMS 2003进行软件分发,我们几乎能够实现所有软件安装程序,比通过活动目录组策略进行软件分发有更好的灵活性和扩展性:组策略基于OU进行分发,一台PC只能属于一个OU,却可以同时属于多个集合,SMS针对集合做软件的分发;支持分发的软件格式不仅包括MSI,还包括.exe, 批处理、脚本文件等的部署,这为大规模的软件部署提供了极大的便利。但是在实际环境中使用SMS进行软件分发时,可能会遇到这样的情况:我们希望软件安装过程对用户是透明的,不需要与用户进行交互,但软件原有的安装程序不支持这些参数,也没有提供*.sms、*.pdf等定义文件,这时,我们可以考虑使用第三方软件为这些不符合条件的安装程序进行重新打包,将其做成.MSI类型的安装程序,再利用SMS将这些程序进行分发下去。现在很多工具都可以实现软件的重新打包功能,原理都是差不多的,这里主要介绍 AdminStudio Configuration Manager Edition 软件,网上有关于FLEXnet AdminStudio免费提供For SMS的版本,大家可以在网上找找,实验拿Adobe Reader阅读器软件来进行分发
分两个部分讲解
1、使用软件对安装程序重新打包
2、使用SMS进行软件分发
实验拓扑如下图:为便于实验,安装DC的计算机名是DC,安装SMS的计算机名是SMS2003,SMS客户端名称是Member1
clip_image002
一、 使用软件对安装程序重新打包
条件:安装AdminStudio Configuration Manager Edition软件的PC建议是一个干净的操作系统,实验条件有限,就安装在SMS服务器上
1、 安装完后,启动应用程序,如下图,点击Repackager
clip_image004
2、 弹出界面,如下图,点击Capture an Installation Using Repachaging Wizard
clip_image006
3、 出现欢迎界面,下一步
clip_image008
4、 选择打包方式,这里选择Snapshot(快照)
clip_image010
5、选择快照方式,选择“Single Step”,勾选“Prompt before running the setup program”在第一次快照完后会立即运行安装程序
clip_image012
5、 收集产品信息,指定安装程序的路径和一些必要信息,如产品名、公司名,红色星号为必填项,这里还可以添加命令行参数,或者单击“Edit Setup List”,将多个安装程序打包为一个MSI安装包
clip_image014
6、 指定与打包相关文件的存储路径,保持默认即可,点击“start”,之后会弹出一个对话框,提示指定的C:\Packages文件夹不存在,询问是否创建,选择是,开始系统的第一次快照扫描
clip_image016
7、 分析系统,捕获初始系统状态
clip_image018
8、 扫描完后,会弹出一个对话框,点击确定,开始安装Adobe Reader软件
clip_image020
9、软件安装完后,弹出下图,点击Process,开始系统的第二次快照扫描
clip_image022
9、 扫描完成
clip_image024
10、 在下图中,此次重打包的概要已经在面板中呈现出来,可以对软件安装过程中产生的一些无关的文件或文件夹、注册表、快捷方式以及INI文件进行选择排除,注意:排除的是和软件安装无关的信息 。完成上面的所有步骤后,我们已经为MSI的制作做好了准备,选择“build”,开始制作MSI安装包
clip_image026
11、 制作完成,可以看到Adobe Reader.msi安装包位于C:\Packages\MSI_Package\目录下
clip_image028
注:完成软件的打包后,还需要对打包生成的软件进行测试,通过进一步的安装使用以确定软件是否可以正常使用,这样才可以进行下一步的大规模部署
clip_image002
INSIDE OUT:
什么是MSI文件
MSI文件是Windows Installer的数据包,它实际上是一个数据库,包含安装一种产品所需要的信息和在很多安装情形下安装(和卸载)程序所需的指令和数据。MSI文件将程序的组成文件与功能关联起来。此外,它还包含有关安装过程本身的信息。如目标文件夹路径、系统依赖项、安装选项和控制安装过程的属性。采用MSI安装的优势在于你可以随时彻底删除它们,更改安装选项,即使安装中途出现意想不到的错误,一样可以安全地恢复到以前的状态,正是凭着此强大功能,越来越多的软件开始使用MSI作为发行的方式了
制作.MSI工具的工作原理
就是执行两次系统的快照扫描,将两次快照扫描之间的系统和注册表的变化对比后,将差异记录并保存,再结合程序打包成为相应的msi包。
clip_image002[7]
二、 使用SMS进行软件分发
软件分发前,先来了解一下软件分发的整体流程和几个重要概念
软件分发整体流程:
1、 配置“软件分发代理程序”
2、 准备客户端访问点(CAP)、管理点和分发点
3、 准备集合
4、 创建并管理数据包和程序
5、 指定分发点
6、 确保 管理员和用户具有运行所播发程序的充分权限
7、 创建播发
8、 客户端连接到CAP或MP,检索策略,运行程序
9、 监视并维护软件分发
注:在SMS管理控制台中,使用“数据包”和“播发”来控制SMS将软件分发至网络中客户端的方式和时间,使用“集合”来控制SMS分发软件的位置。
几个重要概念:
数据包:一个包含用于将软件发送到分发点并在播发目标的 SMS 客户端上执行数据包的文件和说明的对象
程序:与 SMS 数据包相关联并且在播发该数据包时运行于客户端计算机上的命令。每个数据包可以指定多个程序。例如,对于 Microsoft Excel 数据包,可以创建执行典型安装、最小化安装、自定义安装或卸载操作多个程序。
播发:用来指定将特定包中的特定程序指派到特定的计算机集合。播发是数据包,程序和集合间的信息纽带。
一、 配置软件分发代理
SMS控制台中,导航到“客户端代理”,右键“播发程序客户端代理”,勾选“启用软件分发至客户端”,开启SMS客户端软件分发代理功能,策略轮训间隔默认为60分钟,因为实验需要,这里设置为5分钟,在实际生产环境中,不建议这样做,会增加网络流量
clip_image030
切换到播发程序客户端代理属性的“通知”选项卡,如下图,勾选“显示一条通知消息”,表示当客户端检索到软件分发策略后会在通知区域显示一条提示消息,倒计时5分钟意味着该提示消息将持续的时间,在这段时间内,用户可以手动开始软件安装,如果用户在5分钟内没有响应,则会自动开始安装
clip_image032
在Member1客户端上检查组件是否已启用,如果没启用的话,切换到“操作”选项卡,选中“计算机策略检索和评估周期”进行初始化操作,强制客户端去MP检索策略
clip_image034
二、 准备客户端访问点(CAP)、管理点和分发点
在SMS管理控制台,导航到“站点系统”,打开“SMS2003 站点系统”属性对话框,分别启用客户端访问点、管理点以及分发点,启用的方法这里就不再讲解
clip_image036
三、 准备集合
准备集合,以便用于软件分发,实验环境,这里就只分发到Member1客户端,位于“所有Windows XP系统”集合
clip_image038
四、 创建并管理数据包和程序
在SMS管理控制台,导航到“数据包”,右键单击“数据包”,指向“新建”,然后单击“来自定义的数据包”,如下图
clip_image040
从定义创建数据包向导界面,下一步
clip_image042
数据包定义界面,单击“浏览”,指向之前用工具制作的Adobe Reader.msi安装包
clip_image044
源文件,选择“始终从源目录获取文件”
clip_image046
源目录,因为之前是在SMS服务器上制作安装包,所以这里选择“站点服务器上的本地驱动器”,路径处指向软件包存放的目录
clip_image048
至此,从定义创建数据包向导已完成
clip_image050
再来看看该数据包里面的程序,在新建完数据包后默认已经生成了6个程序,分别代表不同的安装方式,这就是.MSI安装包和.exe安装程序的不同之处,“每个系统(用户)不参与”表示安装过程不需要与用户交互,整个安装过程对用户是透明的,“每个系统(用户)参与”表示需要用户进行相关的设置
clip_image052
五、 指定分发点
在Adobe Reader软件包中新建分发点,如下图,由于分发点角色由SMS服务器担当,所以这里选择SMS2003作为分发点
clip_image054
六、 确定管理员和用户具有运行所播发程序的充分权限
使用数据包访问帐户可以设置权限,以指定可以访问分发点上的数据包文件夹的用户和用户组。默认情况下,SMS 使所有用户均可访问这些目录。如果数据包包含敏感数据或者应具有受限的访问权限,则可以将数据包访问帐户配置为限制访问特定用户和用户组。默认情况下,管理员一般账户具有完全控制权限,能够写入文件的内容和扩展属性以及删除文件;用户和来宾一般账户授予对分发点上的数据包共享读取权限,能够查看和复制文件,运行程序,更改共享文件夹内的文件夹以及读取文件的扩展属性。
注:如果删除管理员默认账户,则 SMS 组件将无法更新和修改数据包数据;如果客户端不具有访问数据包文件夹的足够权限,则该数据包内的播发程序将不会运行
clip_image002[9]
INSIDE OUT:
关于分发点上的数据包文件夹
位于“数据包属性”对话框中的“数据访问”选项卡上,如下图1,默认是使用“公用SMS数据包共享”作为分发点上的数据包文件夹,该公用SMS数据包共享将使用分发点上可用磁盘空间最大的驱动器上的“SMSPKGx$”共享,其中“x“是驱动器号,如果该共享不存在,则SMS将创建此共享,如下图2,可以在共享目录看到以播发ID命名的子目录和其下面的软件安装包。注:请勿将任何文件直接放在该共享上,该共享应只能由SMS使用,如果希望在正充当分发点角色的服务器上共享文件,则必须使用单独共享
clip_image056clip_image058
clip_image002[11]
七、 创建播发
在SMS管理员控制台中导航到“播发“,右键单击“播发”,指向“新建”,然后单击“播发”,弹出“播发属性“对话框,如下图,在名称、数据包、程序和集合填上相应的信息,程序这里我们选择”每个系统不参与“,稍后的安装过程对用户是透明的
clip_image060
切换到“计划“选项卡,分配计划选择尽快,
clip_image062
切换到“高级客户端“选项卡,选择”从分发点下载程序“,这意味着客户端会先从分发点把要安装的软件下载到本地计算机,然后再启动安装过程,下载下来的软件默认会位于客户端C:\WINDOWS\system32\CCM\Cache,可以在“系统管理属性”中的“高级”选项卡看到。先下载再安装,这种设置对安装大型软件较为有利,避免了直接从DP安装时容易出现的安装了一部分后忽然断线所带来的问题
clip_image064
八、 客户端连接到CAP或MP,检索策略,运行程序
客户端检索到策略,在通知区域显示提示信息,开始倒计时,点击通知,出现下图,单击“运行”,由于是无人参与安装,因此整个安装过程对于用户是透明的
clip_image066
安装一段时间后,桌面上生成程序图标,并进行初始配置,至此安装完成,如下图
clip_image068
九、 监视并维护软件的分发
服务器端SMS管理控制台导航到“系统状态”――“播发状态”――选择Adobe Reader播发,使用状态消息查看器查看播发状态,其中消息ID为10002、10005、10009的消息分别表示客户端首次接收到播发的策略、首次启动播发的程序以及成功运行播发的程序
clip_image070
总结:对于数据包的创建,有两种方式:数据包、来自定义的数据包。对于较为成熟的软件,在程序中设置命令行时,可参考官方文档中的相关参数说明,不同技术打包的软件使用的参数也不完全相同,如果软件的静默安装参数不正确,则客户端的安装过程不会继续下去。

你可能感兴趣的:(打包,软件,分发,SMS2003,Repackage)