让工作站自动安装程序
数字办公
应大量读者的来信要求,从本期开始我们推出“网管特区”栏目。希望通过一系列的技术文章,能给广大企业局域网用户、网吧从业者以及部分家庭局域网用户带来帮助。
在工作站数量较多的局域网中,我们常常需要为每一工作站安装相同的系统组件或应用程序,这种重复操作的工作量相当巨大!为了提高网络管理效率,我们可以借助网络的共享优势来为局域网中的每一台工作站自动安装应用程序或系统组件。
一 从网络自动安装应用程序
首先我们必须在局域网中选一台计算机作为域服务器,假设笔者已经安装好了一台域服务器,并且该服务器的域名称为“ad.ccjol.cn”。准备好域服务器后,我们只要将待安装的所有应用程序全部复制到域服务器中,并配置好一个脚本文件来自动安装服务器中的目标应用程序,然后指定工作站日后在登录域服务器时自动调用脚本文件,从而通过网络实现自动安装应用程序的目的。
在编辑自动安装应用程序脚本文件时,我们可以打开记事本程序,并将下面的命令代码输入到其中:
@echo off
start/wait \\xxx.xxx.xxx.xxx\yyy zz1.exe
start/wait \\xxx.xxx.xxx.xxx\yyy zz2.exe
……
其中,“xxx.xxx.xxx.xxx”指的是存储有待安装应用程序的域服务器IP地址,“yyy”指的是域服务器中用来保存待安装应用程序的共享文件夹名称,zz1.exe、zz2.exe……指的是待安装的应用程序具体名称,“/wait”指的是一个程序安装好后下面一个程序才能继续安装,要是不使用这个参数的话,那么所有待安装的应用程序就有可能一同进行安装,这样会造成安装操作发生混乱现象。将上面的代码保存成一个扩展名为bat的批处理文件,例如笔者在这里将它保存为“setup.bat”。
下面我们需要做的就是指定工作站用户在登录到域服务器系统中后,能够自动运行前面创建好的脚本配置文件“setup.bat”。在域服务器上运行“DSA.MSC”命令,进入到“Active Directory用户和计算机”列表界面;选中出现在该界面左侧窗格中的目标域服务器名称,例如这里笔者选中的是“ad.ccjol.cn”,再用鼠标右键单击该名称,并从弹出的菜单中执行“属性”命令,然后单击“组策略”选项卡。接下来单击该选项设置页面中的“新建”按钮,来新建一组策略,同时将该新组策略名称设置为“自动安装应用程序”;选中“自动安装应用程序”,单击“编辑”按钮进入到组策略的编辑界面,再用鼠标依次展开“用户设置”→“Windows设置”→“脚本-(登录/注销)”选项,然后双击“脚本-(登录/注销)”选项右侧窗格中的“登录”项目,打开如图1所示的登录属性设置窗口;

单击该界面中的“添加”按钮,然后通过浏览按钮来将前面生成的“setup.bat”文件导入进来。我们在这里一定要将目标脚本文件的路径修改成标准的网络路径,再单击“确定”就能指定好需要运行的脚本文件了。
为了能保证工作站有权限登录进域服务器,我们还必须在域服务器中为工作站创建登录账号,同时将创建好的账号添加到系统的“Account Operators”组中。
小提示: 要是工作站还不是域成员的话,可以右击工作站系统桌面上“我的电脑”图标,执行快捷菜单中的“属性”命令,然后单击“网络标志”选项卡,再单击“属性”按钮。下面将“隶属于”的“域”项目选中,并在其后激活的文本框中输入域服务器名称“ad.ccjol.cn”,最后单击一下“确定”按钮即可。
做好上面的准备工作后,我们还须将待安装的所有应用程序保存到域服务器中的yyy共享目录中,以便让每一台工作站在执行完登录脚本文件后,能够自动从域服务器中拷贝源文件来安装程序。此外,我们还要将yyy共享目录的访问权限设置为“读取和运行”,确保“Account Operators”组中的所有账号都能读取和运行yyy共享目录中的待安装应用程序(见图2)。

注意:当工作站自动安装好所有的应用程序后,我们一定要在域服务器中及时修改系统的组策略,以便删除“登录脚本”策略,否则工作站下次再登录域服务器时又会重复自动安装应用程序了。
二 从网络自动添加系统组件
一般来说,要想在工作站中添加或删除Windows系统组件的话,往往须在每台工作站上通过Windows系统内置的“添加/删除组件”程序来完成,费时费力!下面,笔者就以在工作站中自动安装Internet信息服务组件为例,来向大家介绍如何通过网络自动安装系统组件。
首先我们从局域网中任意挑选一台工作站,并假定该工作站的IP地址为192.168.1.18,工作站使用的操作系统是Windows 2000 Professional;现在打开该工作站的系统资源管理器窗口,依次双击该窗口中的“Windows”文件夹、“Inf”文件夹,然后在对应“Inf”子文件夹窗口中找到Internet信息服务组件所对应的“iis.inf”文件,并将该文件复制一份保存到“D:\share”文件夹中;接着进入到“share”子文件夹窗口中,将“iis.inf”文件的隐藏属性取消掉。
接下来再返回到“Inf”子文件夹窗口,找到其中的“sysoc.inf”文件并打开它,在随后出现的文本编辑界面中,将“IIS=”这一行字符串内容选中,并对它们执行“复制”操作;再到“D:\share”文件夹中用记事本打开“iis.inf”文件,在该文件的顶端输入字符串“[Components]”,然后换一行将前面复制好的“IIS=”这一行字符串内容粘贴到这里,之后保存“iis.inf”文件。
下面再运行记事本之类的文本编辑程序,然后在编辑界面中输入下面的命令代码:
[Components]
iis=on
iis_common=on
iis_inetmgr=on
iis_www=on
iis_ftp=on
iis_doc=on
[NetOptionalComponents]
iis=1
iis_common=1
iis_inetmgr=1
iis_www=1
iis_ftp=1
iis_doc=1
其中“[Components]”下面列出的都是IIS组件的安装选项,而“On”表示自动将对应的选项选中,“[NetOptionalComponents]”下面列出的都是对各个安装选项进行的默认操作,而“1”表示自动执行添加操作。最后将上面的代码保存为“iissetup.txt”文件,同时将该文件存储到“D:\share”文件夹中。
接着单击“开始”→“运行”命令,运行命令“cmd”,进入命令提示符界面,到“d:\share>”下输入命令“sysocmgr.exe /i:iis.inf /u:iissetup.txt”,回车后,工作站系统就会自动开始复制系统文件进行IIS系统组件的安装操作,当然在安装过程中系统会提示我们输入Windows 2000 Professional系统安装光盘的路径,为了提高安装效率,我们可以事先将安装光盘下面的I386文件夹直接复制到每一台工作站中,到时直接将安装路径指向这个目录就可以了。
为了能让其他工作站可以自动安装IIS系统组件,我们可以再打开记事本编辑程序输入下面的命令代码:
@echo off
set path=\\192.168.1.18\share\
X:\Winnt\system32\sysocmgr.exe /i:%path%iis.inf /u:%path%iissetup.txt
其中“X”为Windows系统所在的磁盘分区号,“share”为保存有“iis.inf”和“iissetup.txt”的共享文件夹,将上面的代码保存成扩展名为bat的批处理文件。例如笔者在这里将它保存成为“iissetup.bat”文件,同时将该文件也存储到“D:\share”文件夹中。
最后,我们再找到“D:\share”文件夹,并将该文件夹设置为共享状态。以后局域网中有哪台工作站需要安装IIS系统组件时,我们只要将“iissetup.bat”文件复制到该工作站系统中,然后双击“iissetup.bat”文件就能让该工作站自动通过网络来安装IIS系统组件了。
小提示: 如果我们要在工作站中安装其他系统组件的话,只要先从“sysoc.inf”文件中找到究竟是哪一个INF文件对应我们所要安装的系统组件,一般来说INF文件都是按照系统组件的英文简写来取名的,比方说“iis.inf”名称就是Internet信息服务组件名称的简写,一旦找到目标组件对应的INF文件后,我们就能按照上面的方法来完成自动安装操作了。