在需要给大量客户端部署软件时,使用组策略的软件分发功能还是很有效率的。比如前面文章中谈到的部署 limitlogin 工具,需要在客户端安装电脑上安装软件的客户端,如果手动安装需要耗费很多时间,效率也很低。如果使用组策略则可以一步到位,一次性全部部署,而且不会影响到用户的日常工作。下面我们就来详细介绍一下使用组策略进行软件分发的过程: <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

Windows 主要有两种安装程序包,一种是扩展名为 .exe 的安装程序;另一种是扩展名为 .msi 的安装程序。对于 .msi 的安装程序,组策略可以直接发布。对于 .exe 的安装程序,则需要转换为 .msi 安装程序或创建一个与其对应的扩展名为 .zap 的文本文件。注意: .zap 包只能发布,不能指派;而 .msi 程序即可以发布,也可以指派。发布和指派的区别如下:

1 发布的软件,只能通过“添加 / 删除程序”中的“添加新程序”中添加,不能自动安装在用户的计算机中。

2 指派的软件,在用户登录的时候,系统会自动安装,不需要用户添加。不过,指派的软件也可以在“添加 / 删除程序”中添加和删除。

3 发布的软件,用户可以根据需要添加或删除,而指派的软件,如果用户删除,当用户下次登录时,系统还是会自动安装。

要分发软件,首先需要在服务器上建一个共享文件夹,用于存放需要分发的软件,如下图:

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

下面我们来看看软件分发的步骤:

1. 发布 MSI 格式的软件

1 首先在需要分发软件的 OU 上建一个策略,如下图:

2 在“组策略编辑器”窗口,选择“ User Configuration—Software Settings—Software installation ”,在右面板上,点右键,选择 New—Package ,如下图:

3 )在“ Open ”对话框中,输入软件所在的位置,注意:这里的路径必须使用 \\server\folder\setup.msi 的方式,不能使用 C:\path\setup.msi 的方式,否则,安装的时候会找不到路径。

4 在选择好需要部署的软件后,会弹出“ Deploy Software (部署软件)”对话框,在这里可以选择 Published (发布)、 Assigned (指派)、 Advanced (高级),大家可以根据自己的需求进行选择。在这里我们选择 advanced ,如下图:

5 在点击 OK 后,将弹出软件属性对话框,如下图:可以看到软件的名称、版本、 URL 地址等。

6 点击“ Deployment (部署)”标签,我们可以选择 Published (发布)或 Assigned (指派),这里我们选择 Assigned ,如果勾选“ Install this application at logon (在登录时安装此应用程序)”,那么在用户登录时,系统会自动安装此应用程序。如下图:

7 OK ,完成该软件的指派。

 

2. 发布 EXE 安装程序

1 制作 zap

[Application] 为文件头, Friendlyname 为安装程序名称, SetupCommand 为安装程序名称, Displayversion 为应用程序版本, Publisher 为说明信息。如下图,是应用程序 7-zip .zap 包。

2 )在“组策略编辑器”窗口,选择“ User Configuration—Software Settings—Software installation ”,在右面板上,点右键,选择 New—Package ,如下图:

3 )在“ Open ”对话框中,输入软件所在的位置,如下图:

4 )在选择好需要部署的软件后,会弹出“ Deploy Software (部署软件)”对话框,在这里可以选择 Published (发布)、 Assigned (指派)、 Advanced (高级),大家可以根据自己的需求进行选择。在这里我们选择 advanced ,如下图:

5 )在点击 OK 后,将弹出软件属性对话框,如下图:可以看到软件的名称、版本等信息。

 

6 )点击“ Deployment (部署)”标签,这里只能选择 Published (发布),而且无法勾选“ Install this application at logon (在登录时安装此应用程序)”,所以发布的程序只能在“添加 / 删除程序”中的“添加新程序”中添加。

7 OK 完成应用程序的发布。

8 我们也可以使用一些工具将 .exe 文件转换为 .msi ,比如: Advanced Installer WinINSTALL 等。这些软件的使用都比较简单,这里就不再说明。应用程序做成 .msi 后,就按 .msi 的发布步骤发布就可以了。

 

3. 用户权限的设置

用户在安装软件时需要“本机管理员”权限,但是默认的域用户是不具备本地管理员权限的,而且我们也不可能将所有人都设置为本地管理员。所以我们需要为用户设置权限,这样用户才能安装使用组策略分发的软件。

1 将需要安装组策略分发软件的计算机移动到一个 OU ,然后在这个 OU 上建组策略,如下图:

2 )选择“ Computer Configuration—Windows Installer ”,双击右面板上的“ Always install with elevated privileges (永远以高特权安装)”,如下图:

3 )在弹出的对话框中,勾选“ Enabled (已启用)”,然后点 OK ,如下图:

4 )选择“ Computer Configuration—Windows Settings—Security Settings—Registry ”,在右面板上,点右键,选择 Add Key ,如下图:

5 )在弹出的“ Select Registry Key ”对话框中,选择“ CLASSES_ROOT ”,然后点 OK ,如下图:

6 )在弹出的安全设置对话框中,添加“ Domain Users ”,并设置权限为完全控制,如下面图:

7 )在弹出的“ Add Object (添加对象)”对话框中,选择“ Configure this key then (配置这个项,然后”,再选择“ Replace existing permissions on all subkeys with inheritable permissions (替换所有带继承权限的子文件夹和文件上的现存权限)”,然后点 OK ,如下图:

按上述步骤,添加另外两项 MACHINE USERS ,并且允许 Domain Users 完全控制。

8 )选择“ Computer Configuration—Windows Settings—Security Settings—File System ”,在右面板上,点右键,选择 Add File ,如下图:

9) 在弹出的“ Add a file or folder (添加文件或文件夹)”对话框中,选择 C:\Program File ,然后点 OK ,如下图:

10 )在弹出的安全设置对话框中,添加“ Domain Users ”,并设置权限为完全控制,如下面图:

11 )在弹出的“ Add Object (添加对象)”对话框中,选择“ Configure this key then (配置这个项,然后”,再选择“ Replace existing permissions on all subkeys with inheritable permissions (替换所有带继承权限的子文件夹和文件上的现存权限)”,然后点 OK ,如下图:

12 )以同样的方式,添加 windows 文件夹。

这样,属于 Domain Users 组的用户都拥有软件的安装权限了。

软件分发设置至此完成,虽然步骤有点多,不过设置好了,以后执行起来还是很方便。