使用组策略与脚本发布Office 2010

在Windows Active Directory网络中,使用组策略发布Office 2003时,是在组策略编辑器的“用户配置→策略→软件设置”中进行发布的,但Office 2007与Office 2010,改变了软件分发方式,只能通过将软件指派给“计算机对象”的方式进行分发,在本文中我们介绍使用组策略与脚本,分发Office 2010的办法,主要步骤如下:

(1)为分发Office 2010创建两个共享文件夹,一个文件夹保存Office 2010的安装程序,此共享为所有用户设置“只读”权限,另一个文件夹保存安装Office 2010的日志,此文件夹需要让所有用户“读写”权限。

(2)下载Office 2010的管理员工具及脚本,为安装Office 2010进行自定义设置。

(3)为分发Office 2010创建OU,并编写Office 2010的安装脚本,并自定义用户使用Office 2010的策略。

(4)在客户端测试。

接下来将详细介绍每一步。

8.6.1 准备Office 2010安装程序

在使用组策略发布Office 2010的时候,需要创建一个共享文件夹,在本例中,在E盘创建一个名为software的文件夹并创建同名共享,然后在该文件夹中创建一个Office2010的文件夹(注意,不要有空格),将Office 2010安装光盘中的所有文件及文件夹复制到该文件夹,如图8-125所示。注意,Office 2010分32位与64位版本,本书以32位版本为例。

clip_image001

图8-125 复制Office 2010安装文件

然后从http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=18968站点下载“Office 2010 Administrative Template files (ADM, ADMX/ADML) and Office Customization Tool”,该程序同样有32位与64位版本,32位版本名为AdminTemplates_32bit.exe,64位版本名为AdminTemplates_64bit.exe,大小都是15M。请根据你要分发的Office 2010选择对应的版本,在本例中,选择32位的Office 2010自定义工具。

在下载Office 2010模板文件与自定义工具后,运行该程序,接受许可协议,然后选择一个文件夹,Office 2010管理模板文件与自定义工具将会解压缩到该文件夹。

在解压缩之后,将其中的Admin文件夹复制到前面的Office 2010安装程序所在的目录。

8.6.2 Office 2010自定义文件

在准备好Office 2010安装程序及admin文件夹后,运行Office 2010的自定义程序,为安装Office 2010进行自定义,主要步骤如下:

(1)进入命令提示符,进入Office 2010所在的目录,执行setup /admin。

(2)打开“Microsoft Office自定义工具”,选择“新建用于下列产品的安装程序自定义文件”,并单击“确定”按钮,如图8-132所示。

clip_image002

图8-132 运行Microsoft Office 自定义工具

【说明】如果你是第一次使用,一定要选择“新建用于下列产品的安装程序自定义文件”,此时自定义工具将会从当前的Office 2010安装程序中提取配置。由于Office 2010有多个产品与多个版本,例如有VL版(不需要输入序列号、使用KMS服务器激活的),有普通的需要输入序列号激活的产品,还有32位与64位版本。所以,在你使用自定义工具的时候,一定要将所要分发的Office 2010复制到服务器中,并将admin文件复制到Office 2010的安装目录中,同时配套使用才可以。只有你使用图8-132、新建用于下列产品的安装程序自定义文件(读取当前产品配置)、根据以后的步骤修改配置并保存之后,才可以选择“打开现有安装程序自定义文件”并再次修改,不能打开用于其他产品、版本的自定义文件。

(3)Office 2010自定义工具中的配置比较多,我们只介绍主要的几种。在“安装位置和单位名称”选项中,可以键入“单位名称”。

(4)在“授权和用户界面”页,设置Office 2010的产品密钥,或者选择使用KMS客户端密钥(将用KMS对Office 2010进行激活),如图8-134所示。如果你当前的Office 2010是VL版本,请选择“使用KMS客户端密钥”,如果你当前的产品是使用序列号激活的,请选择“输入其他产品密钥”并输入用于当前Office产品的序列号。如果用于企业部署,如果要输入序列号,请输入可用于多次激活的MAK的序列号。

请选中“我授受《许可协议》中的条款”。在 “显示级别”中,有三项选择,分别是“无、基本、完全-默认”,如果选择“无”,则使用该自定义文件时,在安装的过程中没有任何的显示;如果选择“基本”,在安装的过程中,会显示安装的界面,但不能选择;如果选择“完全-默认”,则在安装的过程中,除了会显示安装界面外,还会让用户选择安装的选项。由于Office 2010的安装过程比较“漫长”,所以,推荐在“显示级别”选择“基本”。如果想让Office 安装程序安装完成后,发出“安装完成”,可以选中“完成通知”,如果不需要该通知,可以不必选择。

clip_image003

图8-134 授权和用户界面

【说明】如果使用的是VL版本的Office,则不能选择“输入其他产品密钥”,反之亦然。如果进行了错误的选择,则应用该配置文件时,会出现错误。本示例中,使用的是Office 2010的VL版本,所以选择“使用KMS客户端密钥”。

(5)在“修改用户设置”页,可以自定义Office 2010中的每个产品的设置,通常使用默认值即可。

(6)在“设置功能安装状态”页,自定义要安装的Office产品,如图8-136所示。你可以单击每个产品并做出选择“从本机运行、从本机运行全部程序、在首次使用时安装、不可用”等。

clip_image004

图8-136 设置功能安装状态

(7)其他设置可以保持默认值,或者根据需要做出设置。然后单击“文件”菜单选择“保存”,在弹出的“另存为”对话框中,将Office 2010的定义保存到Office 2010安装程序所在的Updates文件夹中,注意,一定要是这个文件夹,而保存的文件名可以随意,例如设置为office2010pro,系统将会自动保存为扩展名为msp的文件。

【说明】自定义文件名任意,保存位置任意,在本示例中,自定义文件名为office2010pro.msp,保存在Office 2010的updates文件夹中。

如果要使用自定义文件进行测试,可以在服务器中,进入命令提示窗口,键入如下的命令进行测试:

e:

cd \software\office2010

setup /adminfile updates\office2010pro.msp

如果配置文件无误,则会弹出“安装进度”的Office 2010的安装过程。

如果自定义文件有问题,或者使用不正确的自定义文件,则会弹出“安装错误”的对话框。如果这样,请单击“确定”按钮,然后执行setup /admin,重新创建或修改自定义文件。

8.6.3 修改Office 2010配置文件

如果你不使用上一节中的“自定义工具”创建的自定义文件,而使用默认的方式,安装Office 2010,也可以修改 Office 2010的Config.xml 文件,步骤如下:

(1) 使用文本编辑器工具(例如记事本)打开所安装 Office 产品(本例中为 Office Professional Plus 2010)的 Config.xml 文件。默认情况下,Config.xml 文件位于核心产品 .WW 文件夹(本例中为E:\software\Office2010\ProPlusr.WW)中。

【注意】在Office 2010的VL版本中,config.xml的文件所在目录是proplus.ww,而在其他版本中,文件目录是proplusr.ww,请大家注意这一区别。

(2)找到包含 Display 元素的行,如下面的示例所示:

<!-- <Display Level="full" CompletionNotice="yes" SuppressModal="no" AcceptEula="no" /> -->

删除注释分隔符“<!--”和“-->”,并修改为:

<Display Level="none" CompletionNotice="no" SuppressModal="yes" AcceptEula="yes" />

修改之后如图8-141所示。

clip_image005

图8-141 修改config.xml文件

(3)修改之后,保存退出,并用鼠标双击,用IE浏览器打开该文件,内容显示如图8-142所示为正常。

clip_image006

图8-142 查看config.xml文件内容

(4)如果修改的配置文件有问题,会在IE浏览器中显示,提示错误在第几行。如果出现错误,请重新用“记事本”打开config.xml并进行修改。建设在修改该文件前对该文件进行保存(例如保存到另一位置,或用winrar对该文件进行压缩)。

如果要测试使用config.xml文件,安装Office,请执行如下的命令:

e:

cd \software\office2010

setup.exe /config proplus.ww\config.xml

则安装程序会根据config.xml的内容自动完成安装。如果使用本示例所修改的配置文件,则在安装的过程中,屏幕上不会有任何显示,你可以在“任务管理器→进程”中看到setup.exe程序在运行,直到Office 2010安装完成。

如果你以前在服务器上安装了Office 2010,请进入“控制面板→程序和功能”中,将其卸载,等Office 2010卸载完成之后,再进行上述测试。

8.6.4 创建OU并编写脚本

接下来,要创建专门用来分发Office 2010的组织单位、编写脚本,步骤如下:

(1)在服务器上创建office2010log文件夹,并设置共享,允许Everyone用户组具有“完全控制”权限,如图8-145所示。

clip_image007

图8-145 创建共享、修改共享权限

(2)打开“服务器管理器”,在“角色→Active Directory域服务→Active Directory用户和计算机”中创建一个组织单位,在此名为“部署Office 2010”,然后在“功能→组策略管理→林→域→heinfo.local→部署Office 2010”组织单位中创建组策略并编辑,在本例中,组策略名为Deploy office 2010,如图8-146所示。

clip_image008

图8-146 创建并编辑组策略

(3)打开组策略管理编辑器,定位到“计算机配置→策略→Windows设置→脚本(启动/关机)”,用鼠标右击右侧的“启动”,在弹出的快捷菜单中选择“属性”。

(4)打开“启动 属性”对话框,单击“显示文件”按钮,打开“Startup”文件夹,在右侧的空白窗格中,新建一个文本文件,重定名文件名为office2010install.bat,如图8-149所示。

clip_image009

图8-149 新建批处理文件

(6)用“记事本”打开office2010install.bat之后,编写Office 2010的自定义安装脚本,脚本的关键是能实现“全自动”运行Office 2010的安装程序并能在无人交互的方式下,完成Office 2010的安装。要实现这些功能,你可以使用8.6.2或8.6.3两节中的,任意一种方式即可,例如,如果要使用自定义配置文件安装Office 2010,则安装命令是:

setup /adminfile updates\office2010pro.msp

如果要使用配置文件,则安装命令是:

setup.exe /config proplus.ww\config.xml

当然,在实际的使用中,由于安装程序是保存在服务器上的,所以,无论是安装程序,还是配置文件或自定义文件,你要使用UNC路径。另外,由于Office 2010有32位版本与64位版本,而操作系统亦有32位与64位之分,32位的Office 2010可以安装在32位与64位的操作系统上,而64位的Office 2010,只能安装在64位的操作系统上,在编写脚本的时候,你也要考虑这个问题。下面的脚本,将以分发Office 2010的32位版本为例,并自动识别32位64位操作系统,并启动Office 2010的安装过程。脚本内容如下(本方法使用自定义配置文件):

setlocal

REM *********************************************************************

REM Environment customization begins here. Modify variables below.

REM *********************************************************************

REM 设置Office 2010的产品名称,在安装完成之后,将会在注册表中使用此名称注册键值.

set ProductName=Office14.PROPLUS

REM 设置Office 2010安装文件路径,注意,需要使用UNC网络路径.

set DeployServer=\\dc\software\Office2010

REM 设置Office 2010配置文件及路径

set ConfigFile=\\dc\software\Office2010\ProPlus.WW\config.xml

REM 设置Office 2010自定义文件及路径

set CustomFile=\\dc\software\office2010\updates\office2010pro.msp

REM 设置Office 2010安装日志路径,该路径必须有可写权限

set LogLocation=\\dc\office2010Log

REM *********************************************************************

REM 下面为部署Office 2010的代码,一般不用修改.

REM *********************************************************************

REM 检查64位操作系统中存在的变量,32位操作系统不存在该变量

REM 如果%ProgramFiles(x86)%变量存在,当前系统是64位,不存在则是32位

IF NOT "%ProgramFiles(x86)%"=="" (goto ARP64) else (goto ARP86)

REM 操作系统是 X64. 检查32位Office 2010的反安装键值 Wow6432是否存在

:ARP64

REM 查询注册表键值,如果存在返回0,如果不存在,返回1

reg query HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432NODE\Microsoft\Windows\CurrentVersion\Uninstall\%ProductName%

REM 如果返回值不等于1则结束(键值不存在则继续)

if NOT %errorlevel%==1 (goto End)

REM 检查32位与64位系统中Office 2010uninstall key是否存在

:ARP86

reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%ProductName%

REM 如果不存在,返回1,则开始部署Office ,如果存在则结束

if %errorlevel%==1 (goto DeployOffice) else (goto End)

REM 如是返回值是1,表示Office 2010不存在,运行安装程序

:DeployOffice

REM 使用配置文件config.xml开始安装

REM start /wait %DeployServer%\setup.exe /config %ConfigFile%

REM 使用自定义文件开始安装

REM start /wait %DeployServer%\setup.exe /adminfile %CustomFile%

REM 安装结果输出到Office 2010安装日志

echo %date% %time% Setup ended with error code %errorlevel%. &gt;&gt; %LogLocation%\%computername%.txt

REM If 0 or other was returned, the product was found or another error occurred. Do nothing.

:End

Endlocal

【说明】在该脚本文件中,有四个变量:

第一个变量为“\\dc.heinfo.local\software\Office2010”表示Office 2010安装程序所在路径。

第二个为“\\dc.heinfo.local\software\Office2010\ProPlusr.WW\”表示config.xml文件及路径。

第三个为\\dc\software\office2010\updates\office2010pro.msp表示自定义文件及路径。

第四个为“\\dc.heinfo.local\office2010Log”,表示安装Office 2010的日志文件。

如果你在自己的网络中,请用你自己的服务器的计算机名称与共享名称替换以上文件。该脚本文件也可以从http://technet.microsoft.com/zh-cn/library/ff602181.aspx下载之后,并参考本书修改。

如果你要使用配置文件进行安装,请将

start /wait %DeployServer%\setup.exe /config %ConfigFile%

一行中前面的REM去掉,并在

start /wait %DeployServer%\setup.exe /adminfile %CostomFile%

一行最前面加入REM及一个空格进行分隔。

【注意】请注意不同版本config.xml保存的路径不同,在Office 2010的VL版本中,保存路径是ProPlus.WW,其中版本是ProPlusr.WW。

(7)编写脚本并保存后,返回到“启动 属性”,单击“添加”按钮,在弹出的“添加脚本”对话框中,单击“浏览”按钮,选择图8-149中创建的文件office2010install.bat,如图8-150所示,然后两次单击“确定”按钮返回。

clip_image010

图8-150 添加脚本

(8)定位到“计算机配置→策略→管理模板→系统→脚本”,双击右侧的“组策略脚本的最长等待时间”,将其修改为0,表示让系统一直等到脚本完成运行(默认是600称)。

8.6.5 使用组策略自定义Office 2010

上一节的组策略及脚本是实现在“计算机”中安装Office 2010的功能。如果你要为用户自定义Office 2010的环境,可以在“用户配置”中,通过添加Office 2010组策略模板实现,主要步骤如下:

(1)打开组策略管理编辑器,定位到“用户配置→策略→管理模板”,用鼠标右击,在弹出的快捷菜单中选择“添加/删除模板”。

(2)在弹出的“添加/删除模板”对话框中,单击“添加”按钮,然后浏览选择Office 2010自定义工具的解压缩目录,从adm\zh-cn中选择并添加office14.adm。添加之后,返回到“添加/删除模板”对话框,单击“关闭”按钮,完成添加。

(3)然后定位到“用户配置→策略→管理模板→经典管理模板→Microsoft Office 2010”策略组,就可以对Office 2010进行定义了,如图8-154所示。

clip_image011

图8-154 Office 2010策略组

(4)最后在命令提示符中执行gpupdte /force,刷新组策略。

8.6.6 在Windows 7客户端测试

接下来就可以在Windows 7客户端测试Office 2010的分发了,主要步骤如下:

(1)在“服务器管理器”中,将要安装Office 2010的计算机,移动到“部署Office 2010”组织单位中。

(2)以域管理员帐户heinfo\administrator。

(3)随后会登录进入系统,此时,不会看到Office 2010的安装界面,安装程序会在后台运行,你可以通过“Windows任务管理器”,在“联网”中,看到网络使用率比较高,在“进程”选项卡中会看到setup.exe的进程。

(4)你可以切换到Windows 2008的服务器中,打开“计算机管理”,在“系统工具→共享文件夹→打开文件”中,看到以“Windows7$”的计算机名称打开并访问的e:\software\office2010的安装文件,如图8-158所示。

clip_image012

图8-158 在服务器查看共享文件夹的使用情况

(5)等过一段时间之后,在Windows 7的工作站端,从“开始菜单→所有程序”中会看到“Microsoft Office”的程序文件夹,表示Office 2010部署完成,如图8-159所示。

clip_image013

图8-159 Office 2010部署完成

(6)你也可以查看Office 2010日志文件夹,在此显示了安装结果(每个文件名代表部署了一个计算机,并以计算机名称为文件名)。

(7)打开可以查看部署的结果,如果文件内容中,有日期及代码0,表示部署成功,如果代码不为0,表示部署出现问题。

【说明】日志文件中的返回代码 0 表示安装成功完成。返回代码 3010 表示需要重新启动。有关 Office 产品的 Windows Installer 进程的其他错误代码的详细信息,请参阅 Microsoft 知识库文章 290158:Office 2003 产品和 Office XP 产品中 Windows Installer 进程的错误代码和错误信息列表,该产品链接主页为http://support.microsoft.com/kb/290158/zh-cn。