版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://yuelei.blog.51cto.com/202879/80799

SMS2003部署XP SP3

2008年4月27日,微软发布了最新的Windows XP Service Pack 3。SP3中不但修正了很多Bug,提供了更好的安全性,还支持NAP,这样XP的爱好者就可以继续坚守自己的家园而不用担心被Win2008的NAP架构拒之门外了。今天我们就来看看如何利用SMS2003的软件发布功能在企业内网部署XP SP3。

我们部署SP3的过程大致是这样的,先为需要安装XP SP3的计算机创建一个集合,再为XP SP3创建相应的数据包,程序,播发,然后利用分发点把XP SP3播发到特定的集合。从过程看并不复杂,和发布其他程序基本类似,下面我们通过实验验证一下。

实验拓扑如下图所示,Florence是域控制器,Berlin是SMS服务器,Winxp是客户机,安装了SMS高级客户端。Florence和Berlin都安装了Win2003中文企业版,Winxp安装了Windows XP SP2。

为需要安装XP SP3的计算机创建集合

要发布XP SP3,首先应考虑为需要安装此程序的计算机创建一个集合。如果计算机较少,我们可以用手工的方法定义集合中的计算机;但如果计算机较多,而且我们对集合中的对象还有一些附加条件的要求,例如我们要求安装XP SP3的计算机系统分区至少有1.5G剩余空间,这样用手工方式创建集合就有些不太方便了。这时我们可以使用查询来方便灵活地定义集合中的成员,下面我们举例加以说明。

1)创建查询

用记事本创建一个文本文件,文件名为XPSP3.MOF,文件内容如下图所示。文件中的语句定义了一个查询,查询目标是操作系统为XP而且C盘的剩余空间在1500M以上的计算机。

// *********************************************************************************

//

// Created by SMS Export object wizard

//

// Sunday, June 08, 2008 created

//

// File Name: XPSP3.mof

//

// Comments :

// This query finds all SMS client computers running Windows XP with at least 1500

// MB of free disk space.

//

// *********************************************************************************

// ***** Class : SMS_Query *****

[SecurityVerbs(140551)]

instance of SMS_Query

{

Comments = "All Windows XP clients that have enough disk space to upgrade to Windows XP SP3";

. = "select SMS_R_System.Name, SMS_R_System.SMSInstalledSites, SMS_G_System_OPERATING_SYSTEM.Caption, SMS_G_System_OPERATING_SYSTEM.CSDVersion, SMS_G_System_LOGICAL_DISK.FreeSpace from SMS_R_System inner join SMS_G_System_LOGICAL_DISK . SMS_G_System_LOGICAL_DISK.ResourceID = SMS_R_System.ResourceId inner join SMS_G_System_OPERATING_SYSTEM . SMS_G_System_OPERATING_SYSTEM.ResourceID = SMS_R_System.ResourceId where SMS_G_System_LOGICAL_DISK.FreeSpace >= 1500 and SMS_G_System_LOGICAL_DISK.DeviceID = \"C:\" and SMS_R_System.OperatingSystemNameandVersion like \"Microsoft Windows NT Workstation 5.1\"";

LimitToCollectionID = "";

Name = "Clients ready for Windows XP SP3 Upgrade";

QueryID = "";

TargetClassName = "SMS_R_System";

};

// ***** End *****

2) 导入查询

创建完查询后,我们在SMS中导入它。打开SMS管理员控制台,右键点击查询,如下图所示,在所有任务中选择“导入对象”

出现导入对象向导,选择“下一步”

导入前面创建的XPSP3.MOF,下一步

导入完成

如下图所示,我们可以看到查询中多了一个对象“Client ready for Windows XP SP3 Upgrade”,这就是我们刚刚导入的查询,我们运行这个查询看看效果

如下图所示,查询运行的结果是发现客户机Winxp符合查询要求,这证明我们创建的查询达到了预期要求。

3)创建集合

导入查询之后,我们就可以基于查询来创建集合了。打开SMS管理员控制台,右键点击集合,在所有任务中选择新建集合。如下图所示,我们对新创建的集合命名为Client ready for XP SP3。

在集合属性中切换到“成员身份规则”,点击如下图所示的添加查询按钮

我们为新添加的查询命名为Client ready for XP SP3,如下图所示,选择“导入查询语句”

在查询语句列表中选择“Client ready for Windows XP SP3 Upgrade”,点击确定

如下图所示,我们使用导入的查询在“All System”集合上进行查询操作

如下图所示,在成员身份规则中创建了查询后,点击计划,选择一个合适的更新时间即可。

过了更新时间,我们检查一下集合成员,如下图所示,Winxp已经被列入集合成员了。OK,这样我们就把需要安装XP SP3的计算机集合创建好了,这种方法对大型网络的管理员很有参考价值。

二 创建软件分发

定义好需要安装XP SP3的计算机集合后,接下来就需要把XP SP3播发到这个集合上。我们既可以按部就班地创建数据包,程序,分发点,播发;也可以通过软件分发向导将上述过程逐步实现。我们这次选择使用软件分发向导完成XP SP3的部署。

打开SMS管理员控制台,右键点击“Client ready for XP SP3”集合,如下图所示,从所有任务中选择“分发软件”

启动分发软件向导,选择下一步

选择创建一个新的数据包和程序

注:我们也可以通过定义来创建数据包,定义文件可以在微软网站下载http://www.microsoft.com/downloads/details.aspx?FamilyID=544f2355-7c0c-45fe-90b6-cbd3c6853357&DisplayLang=en

首先创建新数据包,如下图所示,我们填写了数据包的名称,版本,发布服务器,语言等参数。

由于XP SP3的安装程序在SMS服务器上,客户机并没有XP SP3的安装文件,因此我们选择此数据包始终从源目录获取文件。

我们将下载的XP SP3安装文件WINDOWSXP-KB936929-SP3-X86-CHS.EXE解压到SMS服务器的E:\XPSP3目录下,因此我们选择源目录为E:\XPSP3

注:SP3的安装文件需要进行解压操作,解压可以用Winrar工具,也可用安装文件加上 /x参数进行解压操作。

选择Berlin作为分发点

在新的数据包中创建程序,命令行我们输入 i386\update\update.exe /passive /norestart,意思是利用E:\xpsp3\i386\update目录下的update.exe进行升级,/passive参数的作用是进行无人值守安装,/norestart参数的作用是在安装过程中不重启用户的计算机。如果不想让用户看到安装过程,还可以加上/quiet参数。

程序的属性中我们选择仅当用户登录时才进行安装操作,而且要求有管理员权限,为了方便观察实验过程,我们选择允许用户与安装程交互。安装完成后,SMS客户端会后重新启动计算机。

创建完数据包和程序后,我们选择创建播发,把数据包中程序发布出去

选择要播发的程序 Update XP SP3

为新建的播发取个名称,我们选择了默认值

选择将此播发应用到我们刚创建的Client ready for XP SP3集合

设置播发时间,而且此播发永不过期

设置强行分配播发的时间,我们选择在播发生效后10分钟开始强行分配程序

设置完毕,软件分发向导完成

三 修改播发属性

为了提高客户机安装SP3的成功率,我们可以要求客户机先将SP3下载到本机计算机再进行安装,这样就避免了在线安装时网络中断所带来的问题。在SMS管理员控制台中打开新创建的播发属性,如下图所示,在播发属性的高级客户端,选择“从分发点下载程序”

选择了先下载后安装的模式后,有一个问题我们也要注意,XP SP3的大小是490M左右,而默认的SMS客户端缓存只有250M,因此我们还需要修改客户端缓存的大小。在Winxp客户机上,打开控制面板中的系统管理,如下图所示,将临时程序下载文件夹的磁盘空间改为600M,这样就避免了缓存不足所引发的错误。

四 软件安装

做完上述设置后,检查客户机安装情况,过了播发时间后,如下图所示,Winxp已经启动了XP SP3的安装

经过一段时间之后,XP SP3部署完成,重启客户机后,如下图所示,部署XP SP3顺利实现。

后记:部署Windows XP SP3和部署Windows XP SP2的过程非常类似,大家可以参考附件中的微软关于在SMS服务器上部署XP SP2的文档,祝大家实验顺利。

本文出自 “岳雷的微软网络课堂” 博客,请务必保留此出处http://yuelei.blog.51cto.com/202879/80799

本文出自 51CTO.COM技术博客

附件下载:
plusfile.gifSMS2003部署XP SP2的官方文档