打造RIS服务器软件在局域网中自动安装
在局域网中,工作站无休止地进行软件安装、升级、维护、删除操作,这些操作对网络管理员来说是庞大的工作量,同时,这些操作也可能产生安全问题。无论在企业,学校,或是网吧,网络管理员都希望有一种软件分发功能来简化这些复杂的操作。如果你们的局域网是域环境的话,那么只需在域控制器上部署RIS服务,就可以使工作站的软件安装变得轻松自如且安全无忧。下面我就详细演示从软件封装到RIS配置以及软件分发的详细过程。
一、软件封装
要想使用软件发布功能,那么对软件是有一定的要求的,对于那些以EXE等格式的文件是无法被发布的,必须将软件打包成MSI程序包。在一些软件中已经自带了MSI程序包,例如Microsoft Office 2000,我们打开其安装光盘就可以发现其中有一个DATA.MSI文件。但并不是所有的软件都带有MSI程序包,在这种情况下要发布的话,可以有两种选择。要么是使用其它软件来制作MSI程序包,要么编写.ZAP文件,下面我们将向大家简单介绍这两种方法。
1.制作MSI程序包
制作MSI程序包的软件很多,我以微软的SWIADMLE.MSI为例进行说明:
第一步:双击打开Windows 2000/2003 Server的安装光盘,进入“\valueADD\3RDDARTY\MGMT\WINSTLE”目录,双击其中的“SWIADMLE.MSI”文件即可启动安装程序,安装过程不需要我们做任何设置,只需要等待一段时间即可。完装完毕,我们在“开始”菜单中发现多出了“VERITAS oftware”,这就是我们安装之后产生的程序组。(图1)
第二步:运行“VERITAS oftware”中的ERITAS Discover,其首先对系统进行扫描,获取当前系统的“快照”如图2,等扫描完毕,然后再安装要制作MSI格式程序包的软件,一路按照向导生成MSI程序包。(图2)
2.制作ZAP
ZAP格式的程序包需要我们手工来编写该文件:
例如我要制作一个Phtoshop的程序包,那么就得先进入Phtoshop源文件所在文件夹,并新建一TXT文本文件,向其中输入:
[Application]
FriendlyName = "Phtoshop"
SetupCommand = "setup.exe"
DisplayVersion = CS3
Publisher = Adb
其中SetupCommand = "setup.exe"是表示执行该目录下的Setup.exe文件,DisplayVersion=CS3是软件的版本号,而Publisher=Adb则是说明发布公司了。对于其它软件读者可以根据实际情况改变里面的内容。确认内容无误后,将其命名为Setup。并在“文件夹选项”中设置取消“隐藏已知文件类型的扩展名”选项,然后将该文件的扩展名改为ZAP,这样一个ZAP程序包就制作好了。
二、RIS配置
1.共享文件
在服务器上新建一文件夹,将安装文件放置在该文件夹内。为了保证网络内的其它用户或计算机能够读取文件夹里的安装文件,我们需要将文件夹共享出来。在存放有安装文件的文件夹上右击,在弹出的菜单中选择“共享”,选中“共享该文件夹”选项,并设置一下共享名。在默认情况下共享文件夹对“Everyone”组的用户具有完全控制的权限,这从安全角度来讲是极不安全的,因此需要在共享设置选项卡中点击“权限”按钮,在弹出的共享权限对话框中取消取限列表中的“完全控制”、“更改”等权限,只保留“读取”即可(如图3)。
小提示:不希望赋予每一个用户读取权限的话,那么我们可以在“名称”中将“Everyone”组选中,然后点击右侧的“删除”按钮,然后再点击“添加”按钮有针对性的选择可以访问的用户。
2.建立OU
通过活动目录我们可以对域内所有的计算机或用户都分发同样的软件!这对于一些公共程序来说是非常方便的,但是在实际的应用过程中,我们碰到的情况并不是这样,往往是将软件分发给网络内部分计算机或用户,这样我们就不能针对整个域来分发软件,而应针对某个组织单元来分发。
在管理工具中打开“Active Directory用户或计算机”,选中相应的域名,然后点击“操作”按钮,在弹出的菜单中选择“新建”菜单中的“组织单元”(如图4),在打开的“新建对象—组织单元”对话框中输入组织单元的名称,并点击“确定”按钮,这样我们就可以在域名下方看到我们新建立组织单元名称。
但是目前新建立的组织单元中没有任何对象,如果我们针对该组织单元发布软件,当然是不能起到实际作用的。因此我们需要向新建立的组织单元中添加相应的对象。向组织单元中添加对象的方法主要有两种,一是直接新建,双击打开建立的组织单元,然后在右侧的空白区域右击,在弹出的快捷菜单中选择“新建”,这个时候我们就可以根据自己的需要来选择新建“计算机”还是“用户”了。另外一种方法是将已添加的用户或计算机直接移过来。在“Computers”或“Users”中选中相应的对象,然后右击,在弹出的菜单中选择“移动”,在打开的对话框中选择移动的目的地(如图5),也就是我们刚刚创建的组织单元。至此我们就完成了软件发布应用对象的添加。
三、发布软件
至此我们进入真正的软件发布阶段了。右击新建立的组织单元,在弹出的对话框中选择“属性”菜单,在打开的属性对话框中切换到“组策略”选项卡,点击“新建”按钮,然后在“组策略对象链接”列表中输入建立的GPO名称(如图6)。然后将其选中,点击“编辑”按钮,打开组策略配置工具,在工具的左侧是配置的具体项目,我们发现其分为计算机配置和用户配置这两项,并且在这两项下面都有软件配置,那么我们到底采用哪一个呢?这就要看我们应用的范围了。如果我们采用计算机配置,那么将在计算机启动时执行我们的软件分发,而不管当前登录用户的身份是谁;相反的如果采取用户配置,那么不管该用户在域内哪一台机器登录都执行软件分发,与登录的计算机无关,这就要看我们软件发布应用的对象了。
根据实际的应用选择其中的一项,然后在“软件设置”下选择“软件安装”,然后在该项上右击,在弹出的对话框中选择“新建”→“程序包”(如图7),在出现的“打开”文件对话框左侧选择“网上邻居”,然后从网络上找到自己存放安装程序的共享文件夹,打开其中的MSI文件。
小提示:从网上邻居打开安装程序包,是为了保证网络里的用户或计算机都能够找到共享文件夹,如果直接在“我的电脑”里打开的话,那么组织单元的应用对象将同样在本机的“我的电脑”中查找,而不到存放程序包的文件夹中去运行安装文件了。因此正确的路径方式应使用本地计算机的 UNC 路径,即 \\服务器名\共享名\路径\文件名.msi。
选中要发布的软件之后,即会出现部署对话框,在这里一共有三个选择,在通常情况下我们只选择“指派”或“发布”中的一个(如图8)。其中如果选择“指派”选项,那么在进行软件分发时将在“开始”中产生快捷图标,我们只需要点击程序即可以自动安装服务端分发的软件;而“分发”则不会在“开始”中产生快捷图标,只是在“控制面板”中的“添加/删除程序”中产生相应的项目给用户安装,并且此项设置只对组织单元中的用户起作用,如果要将软件分发于计算机,那么只有选择“指派”了。另外这两个选项有一个共同的特点,那就是支持自动激活安装,例如管理员分发了“Photoshop”程序,那么用户只需要点击Pho文件就能自动的安装分发的软件。
四、软件安装
经过上述在DC(域控制器)中的设置后,软件就会被分发到lw.com域中的所有工作站上了。我们在其中一台主机登录域,当用户登录域后,只要点击“添加/删除程序”窗口中的“添加新程序”按钮,就会立即在“从网络添加程序”列表中列出从DC(域控制器)中分发出来的“Adminpak.msi”程序了。点击“添加”按钮则可以立即进行程序的安装。(图9)
五、技巧补遗
1.修改分发属性
已经进行的软件分发还可以修改吗?当然可以了,右击组策略中已经发布的软件,在弹出的对话框中选择“属性”,在这里我们就可以进行具体的调整名称、部署的类型等设置了。
(1).“常规”选项卡
从图中我们可以看到用来发布或分配的软件包的相关信息民,包括产品的版品、发行者等资料,还可以自已定义一个名称。(如图10)
(2).“部署”选项卡
在这里进行的工作就多了,首先读者可以根据我们上面对“发行”和“指派”的理解,来选择一个符合自己要求的部署类型;在部署选项中还有三个项目供我们设置,其中默认状态下已选中“通过扩展名激活自动安装该应用程序”这个选项的作用我相信读者应该都明白其作用的,如果选中“当这个应用程序不再处于管理范围内时,将其卸载”选项,那么当我们取消指定的组策略设置时,将删除发布的应用程序,最后一个选项“不要在添加/删除程序控制面板中显示这个程序包”的作用也很明显,在这里不再多述(如图11)。另外在“安装用介面选项”中有两个不同的选项供我们选择,通常情况下建议大家选择“基本选项”这样将不需要用户进行参与。
如果我们要进行其它高级部署的话,那么可以点击“部署”选项卡顶部的“高级”按钮,打开“高级部署选项”,通常情况下我们都要选中“部署这个程序包时忽略语言”选项。
2.升级已发布的软件
当我们部署的软件出现新版本时,我们就可以对组织单元中的对象已经发布的软件进行升级了。当然在升级之前首先安照前面的方法建好相应的软件分发包,然后打开原发布软件的属性对话框,切换到“升级”选项卡,点击添加”按钮,在打开的“添加升级程序包”选项卡中选择相应的程序包来源,如果选择“某个特定GPO”选项的话,那么就需要点击“浏览”按钮来选择要必要的组策略对象,然后返回“添加升级程度包”对话框。如果执行的操作是安装新版本软件的话,那么就需选中“卸载现有程序包,然后安装升级程序包”,相反的如果仅仅是对分发的软件执行升级的话,那么就需要选中“程序包可以升级现有程序包”选项了,然后单击“确定”(如图12)。如果希望应用到的组织单元内的所有对象都强制升级我们发布的软件包的话,那么在退回到“升级”选项卡时,还需要选中“现有程序包所需的升级”选项,使其强制执行理新。
同样的道理如果我们要对应用软件包的修改,那么我们就可以在其属性的“修改”选项卡中点击“添加”按钮,来选择转换文件“*.MST”,相反的如果是删除软件包的修改,那就简单多了,只需要在修改列表中选中相应的文件,然后将其删除即可。
总结:充分利用域环境通过RIS进行软件的分发,可以极大地解放管理员。但是具体采用哪种方案要根据不同的环境进行选择,最合适的才是最好的。