光电工程师社区

标题: Pxe技术无盘win98的应用 [打印本页]

作者: suncon    时间: 2003-11-3 02:20
标题: Pxe技术无盘win98的应用
Pxe技术无盘win98的应用

WINDOWS98无盘是多少人梦寐以求的事情,WINDOWS95以后Microsoft根本没想到要为它的WINDOWS98 Netsetup。但许多人还是在孜孜不倦的尝试各种解决方法,甚至把WIN95的LOGO改为WIN98、WIN2000的LOGO来安慰自己,在这里我要告诉大家不要再白费力气了,因为你用做WIN95的方法(RPL)去做WIN98是根本无法实现的(除非你用特殊的方法,如:用张的软件等)。既然用RPL不能实现WIN98无盘,难到无盘WIN98就死定了?不。现在,我可以告诉你,用PXE技术,我已经全面成功搞定了WIN98无盘。我所说的成功决非市面上修改LOGO画面的假WIN98无盘。而是真正用WINDOWS98安装盘来实现的。安装完后,我怀着无比激动的心情用WINBENCH99、3DWINBENCH等测试软件完成了测试,还运行了OFFICE2000、AUTOCADR14、PHOTOSHOP5.0、IE5.0等应用软件,接着足足过了一把游戏瘾完成了帝国时代、三角洲部队、古墓丽影、极品飞车等游戏程序,感觉跟本地机没什么区别。看到这里是不是手痒了,其时你不用急,接着往下看就是了。PXE技术是RPL的替代品,它是根据SERVER端收到的MAC地址请求分配到一个IP地址,然后再用TFTP(Trivial File Transfer Protocol)或MTFTP(Multicast Trivial File Transfer Protocol)协议下载一个启动软件包到本机内存中并执行,由这个启动软件包完成基本软件设置,从而引导预先安装在服务器中的终端操作系统。也许你已经发现用这种方法还可以实现WIN2000、等其它操作系统。现在我还是用一个实例来说明如何实现WIN98无盘。首先架设好相应的网络环境,建议选用100M SWITCH及CAT 5非屏蔽双绞线。具体软硬件配置情况下,也可根据实际情况加以调整。准备好1台NT服务器、一台有盘WIN98工作站。

服务器要求:

服务器硬盘至少应含一个足够容量的NTFS分区、安装DHCP服务

软件需求:

Windows NT Server 4.0中文版

· Service Pack 4以上

· Windows 98中文版

· INTEL PDK

安装步骤:

1、NT安装完成后添加IPX/SPX兼容协议、TCP/IP和DHCP服务器,设置TCP/IP的静态IP地址和子网掩码,例如IP地址为113.112.86.1,子网掩码为255.255.255.0,主机名为HYHSERVER,域名为HYHDOMAIN。

2、配置DHCP服务器,增加新域,设定工作站台数范围,如50台设置为113.112.86.101--113.112.86.150,子网掩码为255.255.255.0,然后增加一个DHCP选项,名称为GAMEID,类型为字符串(非数组类型),将其设为全域类型,数值设为PXEGAME。

3、安装PDK.EXE后重新启动。

4、运行NT主菜单中 PXE PDK Configuration,选择主菜单中的Configure proxy DHCP Server,点击 to BootServer Discovery List,将API TEST(65535)和DOSUNDI(3) 加入Boot Server,IP地址为服务器IP地址。(例如113.112.86.1)

5、增加新的一全局组。如HYHGAME。

6、为该全局组增加用户,例如HYH1,HYH2 …..HYH50,设定其密码与用户名相同,使其密码永久有效,并使用户下次登录时不得修改密码。

7、在NTFS分区上建立一新目录,例如为HYHROOT,将其设为共享,共享权限为HYHGAME和管理员完全控制,安全性权限为HYHGAME完全控制和管理员完全控制。

8、选择任一有盘WIN98工作站。

9、并配好网卡,声卡,显卡等设备,用户组设为服务器域名。例如 HYHDOMAIN ,Windows密码同用户名相同。

10、在网络协议中增加IPX/SPX和NETBEUI协议,增加网络用户,设定登录到相应的 WindowsNT域。

11、安装Office2000、PHOTOSHOP5、帝国时代、三角洲部队、古墓丽影、极品飞车、及其他应用软件,将Windows登录方式设为 Windows网络用户登录,重新启动后登录上NT服务器。

12、将本机Windows98环境和数据都传入服务器硬盘中。

13、在服务器HYHROOT\Windows目录下,创建NetNames.BD文件,其为文本方式,格式如下所示。 (较高版本的LITENET则不要这步)

用户名 网卡号(MAC地址)

用户名 网卡号(MAC地址)

…………………

例如:

HYH1 00E05C440123

HYH2 00E05C440124

HYH3 00E05C440125

HYH50 00E05C440173

14、将共享目录(例如为HYHROOT)的安全性权限设为HYHGAME仅读和管理员完全控制,注意应将该目录下所有文件和子目录全部设定。

15、在该共享目录下建立HYH1,HYH2……HYH50子目录,并将每一子目录设为共享,共享名设为用户名,例如HYH1的共享权限为HYH1和管理员完全控制,安全性权限为HYH1和管理员完全控制,共享名为HYH1。

16、将共享目录的Windows\system子目录下(例如C:\HYHROOT\WINDOWS\SYSTEM)的TMMR.REM文件备份,修改该文件安全性属性为HYHGAME和管理员完全控制。

17、把有盘工作站去掉硬盘、光驱、软驱,把BIOS设置为网卡启动,或另用一无盘工作站设为网卡启动。

18、重新启动后,工作站将会根据 DHCP服务器搜索到服务器分配的IP地址,并会Down Load用户定义的 Boot Server,并执行上传的WIN98。至此无盘WIN98宣告成功,无盘WIN95被我彻底打入冷宫。

无盘WIN98可深入教育、洒店、网巴、证券、企事业单位等行业。且它的安全性极高,特别是安装简单、易于维护将会得到广大人们的喜爱。THANKS!

作者: suncon    时间: 2003-11-3 02:21
标题: Pxe技术无盘win98的应用
另一篇

——无盘远程启动系列讲座之一:认识PXE

本文作者:曹松

假如你用RPL无法作无盘Win98,并且,你意识到了用它根本不可能做出来,你想换别的方法来实现windows98无盘启动的话,这篇文章值得你仔细阅读。

随着windows 95时代的远逝,新的无盘启动技术的出现,无盘win95的日子也就屈指可数。PXE技术的出现和逐步成熟,无盘win95的末日真的就这么快地到了……

从此,无盘启动技术进入了win98的时代。

在这里,借助于这家媒体,我将陆续奉献出以下技术:无盘win95/win98远程启动(server:win NT4.0);无盘win95/win98远程启动(server:linux);无盘linux远程启动;无盘win NT远程启动(bootit)。

一 前言

从windows 98 以后的windows家族的操作系统,原本没有无盘启动的设计的,但是,在众多异想天开的好事者的努力下,可以无盘启动了,这连Microsoft corporation都觉得吃惊。Linux的横空出世和步步进逼,为广大的消费者显示出隐约的曙光,通过后续的文章介绍,我们可以只安装一台linux server(而不是用每一个license都必须付钱的windows NT),而客户端跑的是windows 98 。

在将来,显示器制造商可以把CPU、NIC(网络接口卡)、RAM都集成到显示器里去,利用互连网,无盘远程启动,可以远程启动windows9x 或者linux等等,由你选择,然后,你可以在网上纵横驰骋,就象你远游,开一部跑车就够了,不必带上来回的汽油、备用的轮胎等累赘品,路上有的是。今天的我们,看见一台显示器连上键盘、鼠标就可以跑windows或其他的操作系统,在网上溜达,会不会吃惊?

无盘远程启动可以作到!

在现在,我们如此热衷于无盘远程启动的原因,是因为它有自己的优势:

数据安全:公司或学校的保密数据不会通过磁盘被带走;
维护方便、软件集中管理、所有的备份只在一个硬盘上搞定;
重点保护的只是server:只需要一个UPS电源、只要一个防尘设备,这些东西给无盘工作站已经没有意义的;
减少每台工作站都必须安装软盘驱动器、硬盘驱动器和硬盘保护卡以及CD-ROM的金钱支出;
避免通过软盘、硬盘感染计算机病毒;
比利用软盘启动的方式快速;
减少网络管理者维护工作站的时间与负担, 系统维护只需维护服务器硬盘而已;
可在服务器切换工作站的操作环境,你可以让client端跑DOS 、windows95/98 、windows NT 或者目前正红火的linux。(如何跑,请留意后续文章。)
从上面罗列的优点中,我认为最重要的是数据的安全性和可维护性,说他便宜,固然,但是现在随着硬盘价格的下降,它的优势已经比较次要了。就教育、酒店、证券、事业企业等行业来讲,它的生命正在延伸。

基于WindowsNT的无盘工作站(win95),从纯技术的角度上来讲,已经很成熟了,说它的好处,你或许比我更能感受到。

以前,我们是在WindowsNT 下实现远程引导Windows95,采用RPL (Remote Initial Program Load )技术,可以说:前几年所说的,火红大江南北的“无盘工作站”,100%说的是基于RPL技术无盘Win95工作站,相对于DOS无盘站,它确实给我们曾经的兴奋与惊奇。但是,这种技术是当时Microsoft 网开一面(或是为了给windows的宣传?),有基于网络版的windows 95 ( NETWIN95 ),后来,由于众所周知的原因, Microsoft没有这样做。

所以,Windows 98根本就没有网络版本,这正是无盘win98 的困难所在。

后来,上网苦苦检索关于windows98无盘工作站的技术,零星的有这样的介绍。我的一个朋友曾经说他们已经成功了无盘win98 ,我跑过去一看,实际上是把win95的logo画面改成win98 的logo画面,却跑了win95的东西,是正版的假windows 98 。

再后来的几年里,我们几乎没有停止对无盘win98的研究,渐渐地,从RPL 的运行机制上分析,得出了一些结论:用RPL来做无盘win98 是荒唐的,是白费力的事情。我认识的许多专门搞无盘启动问题的朋友都意识到了这个问题,但,一有新的想法,我们又动心去study它,到目前为止,我们仍没有成功。

既然RPL不能搞无盘win98,是不是无盘win98死定了?

现在,我可以告诉你:用INTEL的PXE 技术,我已经成功地搞定了无盘win98!我所说的成功当然不是仅有windows98 的logo画面的那种假win98, : -p我定义的无盘win98成功的标准是:

可以跑Winbench99 ,WinStone99 winbench2000 WinStone2000,3DWinBench等之类的测试软件。通过了这些测试,那么,担心能不能在无盘终端上跑你的VC、 VB、 VFP、 JAVA或3D动画等就成了多余的了。
可以跑office97 ,office 2000 ,autoCAD R14,potoshop5.0 ,IE5.0等之类的应用软件。
速度上至少和本地硬盘一样的快(特别是拨号上网),20台60台的客户端不应有延迟,至少让人感觉不到。
常见游戏:比如帝国时代、红警、三角洲部队、星际争霸、古墓丽影等等,如果通过,足可以满足网吧、游戏厅建设的需要了,可以连网游戏,说明网络部分是健壮的,这可以说已经足够能说明问题了。
可以播放DVD,可以VCD点播,可以运行大多数证券行业的软件,可以跑教育部认可的叫做TOP2000之类的教育软件、多媒体教育软件,可以……
其他所以可以在windows 98 下跑的应用程序……
其他比如兼容性等问题,不好测,但是能完成以上测试,也就是windows 98 所尽能的了。测试完上述软件后,我立即明白了:Windows 98无盘启动已经实现了,困饶多时的问题终于变成了现实。

其实,你不用激动,更不用感谢谁,普及这个技术是我们大家的事情。我是2000年4月份从网上search到的,http://www.dtk.com.cn/上的,但不知道什么原因(或许技术保密??),5月份再去的时候,这个方案已经从这个网站上删除了!!!不过,我拷贝下来了。下面,我将会逐步详细地解释这个方案的。

可以这样理解:PXE是RPL的升级品,它是Preboot Execution Environment的缩写。至于他们的不同,假如你玩过HUB 和ROUTER的话,你一定知道他们的工作原理,一个是静态路由,一个动态路由,不难理解:RPL是根据网卡上的ID号加上其他的东东组成的Frame向server发出请求,而server那里早已经有了这个ID数据,匹配成功则OK,静态地址;PXE是根据server端收到的MAC地址,(就是00E09C410051这样的东西)它的DHCP服务给这个MAC地址指定一个IP地址,每次重启动可能同一台client有与上次启动有不同的IP,动态分配地址。

单纯地比较RPL与PXE究竟有什么不同是没有什么意义的,我只想说,PXE可以看做RPL的升级产品,所谓升级产品,它能玩的,我也能,他不能的,我可以。PXE可以boot的OS有;DOS Windows3.1 windows 95 Windows 98 linux 等等。能不能boot Windows2000 ,请大家一块来试一试吧。

说了这么多的废话,无非是想说PXE的好处罢了,毕竟是新技术,还是详细说明。

顺便说一下:既然PXE是DTKcomputer的技术,最好是用他们的主板了(DTK computer,一个专业生产电脑主板的厂商,主要面向欧美市场,据说很火,看样子近期也想涉足中国市场,不然,他宣传中文版无盘win98干什么?其潜台词是用他们的板子,我猜想 &#59;-D),因为这个技术是我从他们那里得到的,当然用他们整合的东西了,比如主板(至关重要的BIOS,在里面有一段引导PXE的小东东,少了这个,我在这里白说了,你也白看了),网卡(要有bootPXE的功能,用的是realtek公司的rtl8139,已经集成在主板上了。在BIOS开始引导网卡BOOTROM时,按F10键,你会见到有5个选项(详细选项,请参见“三RPL” 的第9步骤),可以选择以RPL启动,或以PXE启动,也可以选择BBS,等,很爽,稍后详细解释),还有那个至关重要的LITENET,目前来说,少了他们的东西是不行的,随着技术的进步,相信有一天我们可以摆脱这种束缚。

剩下所要说明的是:在这里,我仍然写了RPL的安装过程,一则是给没有经验的网虫以经验;二则给有经验做过(兼容)NET2000的,但没有在RTL8139网卡上尝试的人以经验,或是参考,因为我现在懒得回答诸如:我用的是realtek的RTL8139网卡,怎样做无盘win95?等之类的问题,这些日子我不太热心了;三则是大家可以通过对比来了解PXE技术。

 

二 无盘启动的工作原理

说起原理,许多人不齿的,但为了照顾刚进门的兄弟姐妹,或者说:满足想仿效黑客那样分析网络问题的计算机爱好者,还是讲一点,因为对于想成为黑客的人讲,这一步是必须走的。

一部机器通过网络启动,它必须得到这些信息:

一个identity;(有许多client同时启动,每台都有唯一识别号,不然,这台机器在网络中就没有身份。)
某个操作系统的映像文件;(把操作系统引导(boot)下来。)
可以操作的文件系统。
下面,按工作站引导过程说明它的原理:

当客户机启动后,其网卡上的Boot Rom 会广播一个FIND帧,说白了,那是一个引导请求帧,该帧中包含有客户机的网卡号,就是MAC地址:00E09C410021这样的东西。
server端远程启动服务收到客户机广播的FIND帧后,根据帧中所带的网卡ID号,检查远程启动数据库中是否有该卡号的配置记录:如果不存在这个记录,引导过程不能继续;如果此工作站的记录已经存在,远程启动服务发送一个FOUND帧,同样,这个帧中包含了服务器的网卡ID ,也就是server端的MAC地址,然后就调用BOOTP(boot protocol)或者DHCP( Dynamic Host Configuration Protocol ),这个DHCP其实是BOOTP的进化,所以,假如不考虑其他的规定,我认为能适用于BOOTP的一定能适用于DHCP,它们都是处理以太网的地址。
工作站收到第一个响应后(这样说,是假如网络上有不止一台的sever在运行远程启动服务,工作站只对收到的第一个FOUND帧有响应,并且,这个响应包括:分配给工作站端的机器名字、IP地址、服务器端的IP地址、以及启动时的映像文件等。),则发送一个SEND.FILE.REQUEST Frame给第一个响应的远程启动服务器,以请求传送启动所需的文件。
当远程启动服务器收到SEND.FILE.REQUEST Frame的要求后,会根据其远程启动数据库中的工作站记录查找对应的启动块,就是boot block,将工作站所需的启动文件传送给工作站(就是启动所要的那个映像文件),(说白了,给工作站一个FILE.DAT.RESPONSE帧,这个帧包含了工作站启动所需的启动块)。
工作站接收到完整的启动文件后,就开始执行文件中的启动程序,将执行点转向启动块的入口,启动工作站,这时,又要用到另外一个internet协议:TFTP ( Trivial File Transfer Protocol )。接着是不同的OS有不同的引导方式了,接下来,该是我向你讨教的了。
有必要补充解释一下TFTP协议。你用过FTP协议的话,很好理解它:FTP不是有mget、mput吗?可以上传下传文件,OK,TFTP协议是可以理解为FTP的下传部分,是FTP的cut-down版本,它使用了UDP( User Datagram Protocol )代替TCP (Transmission Control Protocol),这是因为client端的bootrom很小,32k或16k,由于UDP是块导向的,而TCP是流导向的,所以我们无盘启动用了TFTP,一块一块地传,直到文件传完。其间,它们要握手的,怕包的丢失。整个启动映像文件传输完毕后,在入口处,bootrom的控制权就交给操作系统的启动映像文件了。
以上假如我没有说清楚的话,请联系我。我的email:mailto:lnuxcao@263.net 。

 

三 RPL (Remote Initial Program Load )

假如你有兴趣在yahoo站点上搜索,最少可以搜索到600多条关于“无盘”关键词的信息,没有4个小时,你阅读不完:我是说,这方面的文章多的是,可千篇一律是关于NET2000(或与之兼容的)的说明,其他的网卡,比如rtl8139,我没有见到过。按有的文章,还要倒一下注册表,其实,无论有没有RTL8139网卡的朋友,你不防拿这篇文章和其他文章对比一下,发现倒注册表是多么的愚蠢!我上了大当才这样呼吁的。

言归正传。以下是我作RPL 过程:(用的是DTK主板,它上面已经集成了rtl8139网卡,就是前面所说的既能引导RPL,又可以引导PXE的那种网卡芯片)

安装好NT server。说了一句废话,但是我还是不放心:别忘了加上那一个协议(DLC Protocol)和一个服务(RemotBoot Server)。特别是安装完Remotboot server,如果重新启动后,你的C:\WINNT\RPL\RPLFILES这个目录应当自动被共享,如果没有被共享的话,可能会有麻烦,检查一下哪里出了问题。
拷贝 DOS文件
拷贝DOS文件到 \WINNNT\RPL\RPLFILES\BINFILES\DOS622\ 目录下:

smartdrv.exe

himem.sys

command.com

io.sys

msdos.sys

其中,io.sys 和 msdos.sys 两个文件要去掉隐含属性和系统属性,不去掉的后果是:工作站端DOS引导不起来。可以在windows NT 的DOS 模式下:

\WINNNT\RPL\RPLFILES\BINFILES\DOS622 attrib –s -h io.sys

\WINNNT\RPL\RPLFILES\BINFILES\DOS622 attrib –s -h msdos.sys

拷贝RTL8139引导时所必须的文件
3.1 在 \WINNT\RPL\BBLOCK\NETBEUI\ 目录下,新建一个RTL8139目录;

3.2 拷贝RTSND.DOS文件到 \WINNT\RPL\BBLOCK\NDIS 目录下;

3.3 拷贝 protocol.ini rtl8139.cnf w95bb.cnf 文件到你刚新建的RTL8139目录;

3.4 说明:上几步中的的四个文件不是随便找到就可以用的,即使去生产这个芯片的厂家的站点下载,也用不成,我已经试过了,而且费了我一个星期的时间,(要知道我作这个是相当熟练的,但还是阴沟翻船)。主板随带的光盘中的那些文件也不可以用。我是从http://www.dtk.com.cn/ 站点中下载的,毕竟,经过他们的整合实验,才推出来,放心用好了。假如万一没有,我会mail给你的。

打开控制面板,双击“服务”,启动“远程启动服务(Remoteboot server)”
要求是:服务器每次启动时,这个服务自动启动。

添加RTL8139网卡适配器(DOS的)
这里,就要在windows NT的DOS 模式下操练 rplcmd 这个命令:

\WINNT\rplcmd

适配器 引导Config配置文件 服务代理商WKSTA [退出]:V

Add Del Enum:a

VenderName=00E09C(输入卡号前六位)

All wther parameters are optional

VenderComment=RTL8139 for 00E09C (注释,可以此处直接回车)

适配器 引导Config配置文件 服务代理商WKSTA [退出]:B

Add Del Enum:a

BootName=dos9cb

// 我的命名规则:

// dos9cb,表示为DOS配置,网卡号前六位是00E09C,boot name

// dos9cc,表示为DOS配置,网卡号前六位是00E09C,config name

// win9cb,表示为win95配置,网卡号前六位是00E09C,boot name

// win9cc,表示为win95配置,网卡号前六位是00E09C,config name

// dos5cb,表示为DOS配置,网卡号前六位是00E05C,boot name

//……依次类推,命名一目了然,好记,待删除时就很见效益了棗给高手们的建议。

VenderName=00E09C (对应的那个 VenderName)

BbcFile=BBLOCK\NETBEUI\RTL8139\RTL8139.CNF

All other parameters are optional

BootComment=RTL8139 for DOS boot

WindowSize=0

适配器 引导Config配置文件 服务代理商WKSTA [退出]:C

Add Del Enum:a

ConfigName=dos9cc

BootName=dos9cb (对应的那个BootName)

DirName=dos

DirName2=dos622

FitShared=fits\dos622.fit

FitPersonal=fits\dos622p.fit

All other parameters are optional

ConfigComment=dos622 for rtl8139 (注释,可自行输入)

DirName3=

Dirname4=

适配器 引导Config配置文件 服务代理商WKSTA [退出]

创建profile文件,添加DOS工作站
打开远程启动服务管理棗远程启动(remoteboot)棗创建新配置文件(create new profile)棗然后,新建一个工作站,配置好对应的文件。

为win95从其他客户端安装Server-Base Server ,也就是搞定SBS。
在woindows NT 中新建一个目录,随便起个名字,比如:PWIN95,并共享之。记住:这个目录名字不要超过8个字符,因为DOS启动时,它不认识长文件名。

从另外一台机器,windows 98 或windows 95上,执行netsetup.exe,安装网络版windows 95 到woindows NT中的共享目录pwin95中,也就是你刚新建的用作sbs服务目录的那个,这个过程很简单,就不详细描述了。

还有一点:安装完毕,把rtl8139.sys拷贝到你服务器中的PWIN95\system目录下,否则,后面有麻烦。这是我实验了多次后的结论。

执行win95srv.bat (这条批处理在NT光盘里找)
比如,我的服务器名字叫:rplpxeserver,那么:

f:\clients\rpl\update\win95 win95srv file://rplpxeserver/pwin95

安装第一台无盘win95工作站
安装前,在NT server上要新建一个machine目录,随便起个名字,(但是文件名不能超过8个字符,下面要讲的PXE也一样小于等于8个字符,因为DOS不支持。)比如:studroot,并共享之。这里将来要存放所有工作站的目录。

在工作站端,开机后按F10,进入网卡boot设置菜单:

Realteck Bootstrap selection menu:

Disable network boot
Network boot using interrupt 18h
Network boot using interrupt 19h
Network boot using PnP/BEV(BBS)
Network boot from RPL ( Int 18r/19r )
Press: 1 , 2 , 3 , 4 or 5 :

选择5棗RPL引导方式,进入DOS。

在完成DOS引导,进入DOS6.22 后,键入:

net time file://rplpxeserver/ /set (和服务器时间同步)
net use f: file://rplpxeserver/pwin95
net use g: file://rplpxeserver/studroot
f:
setup /t:g:\d.tmp /im/is (ignore memory ignore disk scan )
剩下的,就是和本地硬盘安装windows95 一样,不说你也知道怎样作了。
添加RTL8139网卡适配器(Windows95的)
同上,要在windows NT的DOS 模式下操练 rplcmd 这个命令:
\WINNT\rplcmd
适配器 引导Config配置文件 服务代理商WKSTA [退出]:B
Add Del Enum:a
BootName=win9cb
VenderName=00E09C (对应的那个 VenderName)
BbcFile=BBLOCK\NETBEUI\RTL8139\w95bb.CNF
All other parameters are optional
BootComment=RTL8139 for win95 boot
WindowSize=0
适配器 引导Config配置文件 服务代理商WKSTA [退出]:C
Add Del Enum:a
ConfigName=win9cc
BootName=win9cb (对应的上面的BootName)
DirName=dos
DirName2=win95
FitShared=fits\win95.fit
FitPersonal=fits\win95p.fit
All other parameters are optional
ConfigComment=win 95 for rtl8139 (注释,可自行输入)
DirName3=
Dirname4=
适配器 引导Config配置文件 服务代理商WKSTA [退出]

创建profile文件,转换成win95的工作站
再次进入远程启动管理,完成这个工作站的windows profile配置。(把DOS profile改成刚建的win95 profile配置)

执行win95clt.bat批处理
\WINNT\RPL\BIN win95clt file://rplpxeserver/studroot/std1 file://rplpxeserver/ win8139

编辑machines.ini文件,添加网卡MAC地址号
你的machines.ini文件应当如下格式:

&#59; windows 95 machines.ini

[00E09C410023]
SYSDATPATH=g:\std1
G=\\rplpxeserver\studroot

在客户端启动win95,执行后续安装
能走到这一步,成功就在眼前:余下的,就是你第一次进入win95时的情景,一路回车。

安装其他无盘工作站
其他无盘工作站的MAC地址相同的话,很省事:你无非是在远程启动管理里面添加另外一台机器的MAC地址,给它取个名字,设口令,并且,设置它以DOS方式启动,然后:
在客户机端启动,引导进入DOS,再执行如上第9步;
net time file://rplpxeserver/ /set (和服务器时间同步)
net use f: file://rplpxeserver/pwin95
net use g: file://rplpxeserver/studroot
f:
setup /t:g:\d.tmp /im/is (不检测内存和磁盘 )
剩下的,你比我要精明:-D

如此地重复,有多少台client,你必须setup多少步,更麻烦的是:
如果MAC地址不同,你不得不重复第5步和第10步,在远程启动服务器中添加启动模块,以引导不同的网卡。
等你作一遍PXE的无盘win98 ,回过头来,你会对如上的麻烦深恶痛绝。

四 PXE (Preboot Execution Environment )
以下我要重点说明PXE的步骤了,对于众多的网络公司来说,目前,这个技术足可以让他们眼睛一亮:这个方案是我等苦苦求索了多少年的东西,它的应用范围更广。

重要的不是它如何便宜,而是它的管理如何的方便,性能是如何的爽:较高的价格性能比。

可以断言:这是个巨大的商机!!

所以我申明:这篇文章不得以任何商业目的被转载!以下资料来源于:http://www.dtk.com.cn/ .我写出来唯一目的是技术共享,与大家交流。



PXE——RPL的掘墓人(下)
——无盘远程启动系列讲座之二:安装设置篇

四 PXE (Preboot Execution Environment )

以下我要重点说明PXE的步骤了,对于众多的网络公司来说,目前,这个技术足可以让他们眼睛一亮:这个方案是我等苦苦求索了多少年的东西,它的应用范围更广。

重要的不是它如何便宜,而是它的管理如何的方便,性能是如何的爽:较高的价格性能比。

可以断言:这是个巨大的商机!!

所以我申明:这篇文章不得以任何商业目的被转载!以下资料来源于:http://www.dtk.com.cn/ .我写出来唯一目的是技术共享,与大家交流。

4.1 环境安装说明

首先应遵循568A或568B标准架设好相应的网络环境, 建议选用100M SWITCH及CAT 5 非屏蔽双绞线。具体软硬件配置情况如下,也可根据实际情况加以调整。以下介绍以20台学生机、1台服务器、1台教师机为例;终端OS选用Windows98中文第一版, PXE PDK以Build078为例。

硬件配置

服务器要求:

CPU Intel Pentium?Ⅲ 600MHZ
MEMORY 128M PC100 SRAM
HARD DRIVE IDE or SCSI ,above 8G
CDROM
48X
ETHERNET
10/100M bit PCI Ethernet Adapter
客户机(或叫做终端机,工作站等等)要求:
CPU Intel Celeron? 366MHZ
MEMORY 64M PC100 SRAM
MAINBOARD DTK PRM 13I E1 (Integrate Video Card , Sound Card , RTL8139)

4.2 电子教室软件需求

Windows NT Server 4.0中文版 (英文版亦可,用户数由实际终端数量决定)
Service Pack 4 以上
Windows 98 中文版
PXE PDK或Intel ECRB(ECRB安装方法请参考PDK安装)
Tweak UI for Windows98 (在Windows98安装盘中的 Tool\Reskit\PowerToys 目录下)
OFFICE97 及其他应用软件(如AutoCAD、Photoshop、IE5.5、Office2000等等)
4.3 服务器DHCP、PXE配置
1. 服务器硬盘至少应含一个足够容量的NTFS分区,以20个学生为例,需有一个大于20*80M=1.6G的NTFS分区,因每一学生需占用80M以上的硬盘空间。(以60个学生为例,则为60*80M=4.8G)

2. NT安装完成后应增加IPX/SPX兼容协议和DHCP服务器,并应设定好TCP/IP的静态IP地址和子网掩码,例如 IP地址为192.169.8.1, 子网掩码为255.255.255.0,主机名为RPLPXESERVER,域名为RPLPXEDOMAIN。

3. DHCP服务器配置方法:首先应增加新域,并马上启用,例如设定范围为192.169.8.10 = 192.169.8.40, 子网掩码为255.255.255.0,然后增加一个DHCP选项,其ID 号为60,名称为ClassID,类型为字符串(非数组类型),将其设为全域类型,数值设为PXEClient。(终端数目若不同,请作适当调整)

4.运行PXE20-PDK.EXE,按缺省值安装后重新启动。(以下介绍以Build078为例,ECRB和其他版本同理)

5. 若用户有ApiTest.1和DosUndi.1两文件,则只需将ApiTest.1拷到C:\program Files\Intel\Pxe \Pdk\system\Images\x86pc\undi\ApiTest目录下. 将Dosundi.1拷到C:\program Files\Intel\ Pxe\Pdk\system\Images\x86pc\undi\DosUndi目录下,并跳过下面的第6步。

6. 准备两张DOS6.22可引导系统盘,其中一张拷入Himem.Sys, RamDrive.sys,More.Com和FC.Com,标记为APITEST,运行NT主菜单中PXE PDK ApiTest Image Creator 将该盘内容产生APITEST.1文件.另外一张拷入More.Com, 运行NT主菜单中PXE PDK DosUndi Image Creator 将该盘内容产生DOSUNDI.1文件.系统安装时会提示插入NT安装盘,注意不要选\i386,只输入根目录即可。

7.运行NT主菜单中PXE PDK Configuration ,选择主菜单中的Configure proxyDHCP Server,在Client Options选项中,可调整Boot Server的菜单提示时间,将其设为0,则无菜单提示.点击to BootServer Discovery List,将API TEST (65535)和DOSUNDI(3)加入Boot Server ,IP地址为服务器IP地址. (例如192.169.8.1)

8.缺省Boot Server为Local Boot,学生机用户可按F8选择Boot Server,不按F8时,以菜单的第一项作为默认启动项。 可依下图所示, 先用鼠标右键点中Boot Server,选择Move Entry Up 或Move Entry Down来改变菜单顺序,将APITEST或DOSUNDI移到第一项来让其启动。(MultiUser为自建Server,用户可不于理会)

4.4 服务器用户配置

1. 增加一新的全局组,例如为DTKSTUDENT,并为其增加用户LNGUEST(同学生机的安装用户一致),设定其密码同用户名相同(LNGUEST). (可利用提供的SETUSER.EXE自动完成)

2. 为该全局组增加用户,例如TT1,TT2 … TT20,设定其密码与用户名相同.使其密码永久有效,并使用户下次登录时不得修改密码. (可利用提供的SETUSER.EXE自动完成)

3. 在NTFS分区上建立一新目录,例如为STUDENTROOT,将其设为共享,共享权限为DTKSTUDENT和管理员完全控制.安全性权限为DTKSTUDENT完全控制和管理员完全控制.

4.5 学生机软件安装&#59;

1. 选择任一学生机电脑,接上硬盘,光驱,软驱。

2. 选择Load Optimized Defaults ,装入CMOS 缺省值。

3. 在Integrated Peripherals栏中,设置On Board Lan Boot ROM 为Disable,将Realtek Bootstrap 中断改为第一项,由本机启动。

4. 在本机硬盘中安装Windows98简体中文版,并配好网卡,声卡,显卡等设备,注意网卡驱动程序为RealTek RTL8139(A/B/C/8130) PCI Fast Ethernet NIC (NDIS5/Win98 Driver), 用户名设为LNGUEST(同服务器用户名一致),用户组设为服务器域名。例如RPLPXEDOMAIN, Windows密码同用户名相同 (LNGUEST)。(英文Windows98安装方法相同)

5. 在网络协议中增加IPX/SPX和NETBEUI协议,TCP/IP协议不要设为固定IP,而为自动获取.增加网络用户,设定登录到相应的WindowsNT域

6. 将提供的NET.EXE替换原Windows目录下的NET.EXE,重新启动电脑后用F8进入DOS状态,可键入NET START IPX,若工作正常,说明配置正确。(对于英文Windows98和其他版本可能不需替换,对于Windows 98第二版,可参考LiteNet说明,替换第一版的NDIS.VXD文件)

7. 安装Office97、TWeak UI、教学软件及其他应用软件,将Windows登录方式设为Windows 网络用户登录,去掉TweakUI的My Computer中的本地A盘, 重新启动后登录上服务器。

8. 运行REGEDIT,导出[HKEY_USERS\.DEFAULT分支,存为LNGUEST.REG文件,将该文件用文本编辑器打开,将其中所有的.DEFAULT替换为{%CHN%},并另存到本机Windows目录下,改名为CHN.REG。

9. 运行LITENET的SETUP程序(或运行Lnecedtk.exe),键入NetBIOS Server Name(服务器主机名)和NetBIOS Share Name(服务器共享目录名),例如分别为RPLPXESERVER和STUDENTROOT.当出现需Windows98原盘提示时,请键入英文Windows98的路径,例如(\ewin98),重新启动后,插入一空白软盘,按提示将其格式化,注意应带系统,然后选择完全安装,则将本机Windows98环境和数据都传入服务器硬盘中.

4.6 服务器Boot Server配置

1. 将上面产生的LiteNet启动盘的Config.Sys中的DEVICE=EMM386.EXE语句REMARK,即在其前加 REM语句。

2. 若用户想减轻网络负担,则请将RANDELAY.EXE文件复制到A:\WINBOOT 目录下,在A:\WINBOOT\ STARTNET.BAT中的QUALCNX命令前加入RANDELAY 5 60。(随机延时5到60秒)

3. 若用户想屏蔽原LiteNet启动信息,则请将DrawCap.Com和DrawDot.Com复制到A:\WINBOOT 目录下,在SETVARS.BAT中加入DrawCap语句,在STARTNET.BAT中加入DrawDot信息,(参考提供的LiteNet 软盘文件), 若安装用户名不为LNGUEST,请对A:\WINBOOT目录下的STARTNET.BAT中的QUALCNX命令参数作适当调整,全部修改后将该盘插入软驱中。

4. 运行PXE目录(例如C:\program Files\Intel\Pxe\Pdk\system)下的MkImage.EXE文件,将产生该软盘的磁盘影象Test.Bin

5. 选择DOSUNDI作为当前Boot Server,并将C:\program Files\Intel\Pxe\Pdk\system\Images\ x86pc\undi\DosUndi目录下的Dosundi.1备份,例如改名为Dosundi.2,将上面产生的Test.Bin改名为Dosundi.1,复制到该目录.

6. 在共享目录的Windows子目录下(例如C:\STUDENTROOT\WINDOWS),将USERCMD.BAT中的QVMEM的REM语句去掉,在QRestAll命令前增加以下几行(可参考提供的USERCMD.BAT文件)

if exist %HOME%\PATCHED.REG goto notchange

QPATCH C:\WINDOWS\CHN.REG %HOME%\PATCHED.REG

regedit %HOME%\PATCHED.REG

:notchange

7. 在该Windows目录下,创建NETNAMES.DB文件,其为文本方式,格式如下所示 可参考提供的NetNames.DB文件样本,其中的网卡号在学生机启动时可以得到)

用户名 网卡号(MAC 地址)

用户名 网卡号(MAC 地址)

… …

例如某NETNAMES.DB文件内容为:

NetNames.DB sample

#NETPC04 00E04C390014

TT1 00E05C390299

TT2 00E05C39007F

TT3 00E05C39029C

TT4 00E04C39001F

TT5 00E05C39029D

8. 将共享目录(例如为STUDENTROOT)的安全性权限设为DTKSTUDENT仅读和管理员完全控制,注意应将该目录下所有文件和子目录全部设定.

9. 在该共享目录下建立TT1,TT2…TT20子目录,并将每一子目录设为共享, 共享名设为用户名,例如TT1的共享权限为TT1和管理员完全控制.安全性权限为TT1和管理员完全控制,共享名为TT1. (可利用提供的SETUSER.EXE自动完成)

10. 将共享目录的Windows\system子目录下(例如C:\STUDENTROOT\WINDOWS\SYSTEM)的TMMR.REM文件作备份,修改该文件安全性属性为DTKSTUDENT和管理员完全控制

4.7 PXE终端配置方法&#59;

1. 按Del进入学生机电脑的CMOS参数配置

2. 选择Load Optimized Defaults ,装入CMOS 缺省值.

3. 在Standard CMOS栏中,将IDE所连四个设备的Auto选项改为None.将A驱的1.44M选项改为None.

4. 在Advanced BIOS栏中,修改First Boot Device为Lan,修改Boot Up Floppy Seek为Disable.

5. 在Integrated Peripherals栏中,设置On Board Lan Boot ROM 为Enable.

6. 保存参数后重新引导,出现按F10菜单时,选择第2项或第3项,利用Int18或Int19作为Realtek Bootstrap 中断.

7. 重新启动后,学生机应提示DHCP MAC ADDR和DHCP的搜寻信息. 若网络配置正常,则会连上DHCP服务器,并得到分配的IP地址,显示CLIENT IP,MASK,DHCP IP信息,若PXE配置正常,则会Down Load用户定义的Boot Server(APITEST or DOSUNDI),并执行

8. 原用来安装LiteNet的学生终端去掉硬盘、软驱、光驱后同上配置,同样可作为PXE终端引导。

此时学生终端就可开机运行了.

4.8 PXE终端软件增减方法&#59;

1. 配好原安装环境,并增加相应的应用软件。

2. 将服务器中所有终端目录下所有文件删掉(主要删除USER.DAT,SYSTEM.DAT和PATCHED.REG文件, 可利用提供的SETUSER.EXE自动完成)

3. 将服务器中的安装好的Windows目录下的DeskTop和Start Menu下所有文件删掉

4. 以管理员身份(Administrator)登录上原Windows98系统,重新建立CHN.REG,并对注册表作相应调整,可参考上面的详细叙述。

5. 运行LiteNet的Qsynch文件,选取Incremental Copy将新产生文件复制到服务器上。

6. 对服务器中的安装好的Windows目录下的USERCMD.BAT作相应调整即可。

五 两种不同无盘启动方案的比较

其实,到这步,不用比较你都能看出他们各自的优缺点:

1. RPL 和 PXE 都可以免费得到。我测试的PXE是从www.intel.com 站点下载的PDK2.0(build078),据说现在有了build(079)。

2. 虽然它们都是无盘启动,但是,RPL ,毫无疑问,只能做无盘win95,不能作无盘win98,建议企图用他继续研究无盘win98的朋友止步,好好研究这个PXE 技术;RPL唯一的好处是:比较成熟,关于它的文章漫天皆是。

3. 就构架整个网络来说,PXE 要简单得多。这集中反映在对每台客户机的配置上:RPL要求每一台客户机都要执行安装过程,而PXE配置时,只需要每一台客户机的MAC地址,把它写到netnames.db这个文件中就可以了。

4. 就性能价格比来讲(我觉得没有什么可讲:明摆着的),PXE是RPL 的替代品,是无盘win95的“掘墓人”,从此,无盘启动技术进入了win98的时代。但是我没有说它是无盘启动的终极产品。

5. 就适用范围来讲,windows 98能延伸到什么地方,也就是这个技术也可以延伸到的地方。如前我所提过的学校、医院、酒店宾馆、厂矿企业、商场、银行…..而win95 由于它本质上的限制,现在已经是优美的回忆了。

6. 就可维护性讲,PXE空前绝后!试想:假如无盘工作站坏了,没有备份,假如是RPL的win95,那么,你在删除每个客户端的目录时,可要仔细掂量:这意味着删除后,必须在每台客户端再来执行安装:有一台,你必须setup一次,有100台,哪怕从日出到日落,你也要一台一台的setup。PXE没有这会事,它的每个工作站的配置都是从公共的windows目录下读取,删除了,无非在启动时再读一次,不用在工作站作任何的动作,哪里有RPL那样繁??是学生,随他怎样折腾好了;是旅店的旅客,随他上网也好,玩游戏也好,试图破坏我的注册表以显示他的能耐也好,都没有关系,可以第二天又自动复原;是企业的员工,他可以随心所欲地设置机关,海阔天空地发挥他的能耐……win95所能做到的,只是在sever端对用户权限的限制,这无疑又限制了win95的操作性能,尽管原本都是有限的。

7. 应用软件的安装。当你看中某个新的软件,并且打算把它安装在无盘工作站上时,用PXE安装,比如想在无盘win98中新加一个游戏,或以前没有office2000,现在要安装office2000,很简单:用你那个上传的本地硬盘安装好后,上传一下,所有client端都可以用了。而win95的应用软件的安装就没有这么简单。

8. 好了,再没有什么可以说的,该我休息该你动手了

作者: suncon    时间: 2003-11-3 02:22
标题: Pxe技术无盘win98的应用
深入PXE无盘网络-原理篇


一、PXE的工作原理

  PXE是RPL的升级品,它是Preboot Execution Environment的缩写。它们的不同之处为:一个是静态路由,一个是动态路由。不难理解:RPL是根据网卡上的ID号加上其它的记录组成的Frame向server发出请求,而server那里早已经有了这个ID数据,匹配成功则进行远程启动;PXE则是根据服务器端收到的工作站MAC地址(就是网卡号),使用DHCP服务给这个MAC地址指定一个IP地址,每次重启动可能同一台工作站有与上次启动有不同的IP,即动态分配地址。下面以工作站引导过程说明PXE的原理:

1、 用户端电脑开机后, PXE Boot ROM 获得控制权之前先做自我测试,然后以广播形式发出一个请求FIND帧。

2、 如果服务器收到个人电脑所送出的要求, 就会送回 DHCP 回应, 内容包括用户端的 IP 地址, 预设通讯通道, 及开机映像文件。 否则, 服务器会忽略这个要求。

3、 工作站收到服务器发回的响应后则会回应一个FRAME,以请求传送启动所需文件。

4、 之后,将有更多的讯息在用户端与服务器之间作应答, 用以决定启动参数。 BootPROM 由 TFTP 通讯协议从服务器下载开机映像档, 这个映像档就是软盘的映象文件。

5、 工作站使用TFTP 协议接收启动文件后,将控制权转交启动块,引导操作系统,完成远程启动。

二、PXE和RPL的比较

1、虽然它们都是无盘启动,但是,RPL ,毫无疑问,只能做无盘win95或假WIN98,不能作成内核为win98的无盘站。RPL唯一的好处是:比较成熟,关于它的文章漫天皆是。

2、就构架整个网络来说,PXE 要简单得多。这集中反映在对每台客户机的配置上:RPL要求每一台客户机都要执行安装过程,而PXE配置时,只需要每一台客户机的MAC地址,把它写到netnames.db这个文件中就可以了,甚至连这个都可以自动完成。

3、 就性能价格比来讲,PXE是RPL 的替代品,是无盘win95的“掘墓人”,从此,无盘启动技术进入了win98的时代。

4、 就适用范围来讲,有盘windows 98能延伸到什么地方,也就是这个技术也可以延伸到的地方。而win95 由于它内核上的限制,不能较好地与INTERNET接轨,其应用受到了极大的限制。

5、就可维护性讲,PXE空前绝后!PXE的每个工作站的配置都是从公共的windows目录下读取,删除了,无非是重新启动一次,不用在工作站作任何的动作,系统将自动复原。

6、应用软件的安装。当你看中某个新的软件,并且打算把它安装在无盘工作站上时,用PXE安装,比如想在无盘win98中新加一个游戏,或以前没有office2000,现在要安装office2000,很简单:用你那个上传的本地硬盘安装好后,上传一下,所有工作站都可以用了。而win95的应用软件的安装就没有这么简单。


1、 开机时,出现一个“性能警告”,内容为:计算机可能有病毒,计算机的主引导记录已修改,是否参阅有关此问题的相关信息?选择“否”后进入系统,能正常使用。怎样去掉这个提示?
答:有两种方法:1)只要把USERCMD.BAT中的QrestAll命令前的rem去掉即可。
2)启动一台无盘工作站,例如P01 ,用“控制面板”将硬盘控制器删除,然后在服务器端将P01目录下的SYSTEM.dat复制到windows目录下。此时所有工作站便不会出现病毒警告了。

2、 工作站启动过程中出现以下错误提示:
Error(Destination File)ermisino denied之后,死机。
答:该工作站对自己的目录无“完全控制”权限。可以在服务器上用“域用户管理器”将此目录的完全控制权限附给该工作站用户。

3、 工作站启动时出现以下错误提示:
PXE-E61:Media test failure ,check cable
PXE-M0F:Exiting PXE ROM. 之后死机。
答:网线断或HUB有问题。

4、 工作站启动到DHCP……时报错,得不到IP地址。
答:服务器DHCP配置错误或在网络中存在其它的DHCH(例WINGATE或SYGATE提供的DHCP)。禁用WINGATE或SYGATE的DHCP服务。

5、 工作站启动到MTFTP……时报错,得不到启动映象包。
答:服务器端的MTFTP服务没有运行。若在服务器启动时,工作站提出下传要求,此时服务器将不会自动运行MTFTP,此时必须手工启动,方法是:点击“开始”― ”程序”―”PXE PDK”―“PXD PDK Configuration Program“打开PXE的配置界面,右击PXE服务器名,选Star/stop service……在M/tftp service中,单击“Start” 按钮。

6、 工作站启动到
Requesting more DHCP options…
Downloading DOS boot diskette image… 时死机。
答:工作站下传启动映象时出错,主要原因有:
1) CMOS问题,由于,不同的主板设置不一样,所以设置项也不同。一般是时间参数的设置有问题。例在AWORD的BIOS中有些工作站的PNP/PCI CONFIGURATION 下的PCI Master 0 WS Write 设为Eanble 时,便会出现上述故障。
2) 网线问题,由于网络传输速度在100M,网络的布线应遵循586A或586B标准。网线正确的排列是:橙白、橙、绿白、蓝、蓝白、绿、棕白、棕。

7、 工作站启动到最后一步时出现以下错误:
*******SHELL*******
file KRNI386.EXE The Path was not found
答:分两种情况:
1) 上传完后第一次启动时就出现上述提示,则说明安装过程中有问题,例如没将A盘禁止或windos98 第二版未作调整等。
2) 若是上传工作站正常,而其它工作站出上述提示,可能是主板与上传工作站不一样或其COMS设置不一样。

8、工作站正常启动后,过了二分钟左右,出现“假死机”现象。
答:所谓“假死机”现象就是:系统处于忙状态,此时鼠标能动,但不开任何窗口,再过四、五分钟后一切正常。这种情况一般为注册表问题,简单的解决方法是:在安装时不选中“文件和打印机共享”。

9、运行较大软件时出现内存不足。
答:未设置虚拟内存,修改相应文件,添加一定的虚拟内存。

10、在启动无盘98时实模式连不上服务器,表现在执行STARTNET.BAT中的 QUALCNX.EXE时或死机或出错
答:实模式连网的一些必要文件如NET.EXE、PROTMAN.DOS、PROTMAN.EXE、SNAPSHOT.EXE及NDISHLP.SYS,要么不全、要么没有代替成英文或WINDOWS 97的版本的。




这部分内容主要是为那些准备剖析在LITENET下PXE无盘WIN98启动的每一细节的读者而准备的。

1、CONFIG.SYS

DOS=HIGH,UMB
DEVICE=A:\HIMEM.SYS /TESTMEM:OFF /V
DEVICE=A:\EMM386.EXE NOEMS /Y=C:\WINDOWS\EMM386.EXE /V
DEVICE=A:\IFSHLP.SYS
DEVICEHIGH=A:\RAMDRIVE.SYS 64 /E(注1)
SHELL=A:\COMMAND.COM A:\ /P
STACKS=9,256


注1:该命令是在内存中生一个64K的虚拟C盘。这个虚拟C盘将被在下面的STARTNET.BAT批理文件中的QUALCNX.EXE或QAUTOLOG.EXE调用命令 “NET USE C: \\服务名\共享目录名” 生成的C盘所掩盖还不可见,直到WINDOWS的启动过程中实模式网络转到保护模式网络过渡中,由于这一小段时间这段短暂的时间里,WINDOWS必须加载一个对保护模式联网比较重要的文件才能重建。保护模式的网络,没有这个文件,网络才能重新连接。这个文件又要如果才能找到呢(此时实模式的网络已断,而保护模式的网络又不连接)?此时,这个虚拟盘就起了很大的作用。因为如果我们把这个文件放到这个虚拟盘上,windows就会到这个虚拟C盘找到这个文件而正常的实现保护模式的连网。起一个过渡的作用。这个文件就是保护模式下的网卡驱动程序。

2、AUTOEXEC.BAT

@echo off
cd \winboot
call setvars.bat(注1)
Call startnet.bat(注2)

注1:setvars批处理是设置无盘98启动时所需要的一些环境变量。如服务器名,共享目录名,windows所在的盘,windows所在目录,实模式下的网卡驱动程序文件名等。
注2:上面的startnet批处理是实现实模式连网,并为无盘98启动做好准备。

3、SETVARS.BAT

SET WINDIR=C:\WINDOWS(注1)
SET DRIVE=C注2)
SET NETCARD=PCIDN.DOS(注3)
SET SERVER=SERVER(注4)
SET SHARE=WINDISK(注5)
CALL TUNING.BAT(注6)

注1:WINDOWS所在的目录名
注2:WINDOWS所在的盘符
注3:实模式下的网卡驱动程序名
注4:NT或W2K服务器名
注5:WINDOWS所在服务器里的共享目录名
注6:批处理TUNING实现把保护模式下的驱动程序拷到虚拟C盘

4、TUNING.BAT

@ECHO OFF
IF EXIST %WINDIR%\NULL GOTO MD_SYSTEM
MD %WINDIR% NUL(注1)
:MD_SYSTEM
IF EXIST %WINDIR%\SYSTEM\NULL GOTO COPY_RPL
MD %WINDIR%\SYSTEM NUL(注2)
:COPT_RPL
IF EXIST %WINDIR%\SYSTEM\RTL8029.SYS GOTO COPY_END
COPY A:\WINBOOT\RTL8029.SYS %WINDIR%\SYSTEM NUL(注3)
:COPY_END
@ECHO ON

注1:在虚拟C盘中建立一个WINDOWS目录
注2:在虚拟C盘中的WINDOWS目录下建立一个SYSTEM目录
注3:把保护模式下的驱动程序从A盘的WINBOOT目录下拷到虚拟C盘的WINDOWS\SYSTEM



5、STARTNET.BAT

@ECHO OFF
SET COMSPEC=A:\COMMAND.COM
SET PATH=%WINDIR%&#59;%WINDIR%\COMMAND&#59;%DRIVE%\LITENET(注1)
SET TEMP=A:\WINBOOT
SET NETBUFF=140(注2)
LH QUALCNX LNGUEST LNGUEST(注3)
CALL %TEMP%\USERNAME.BAT(注4)
QAUTOLOG.EXE(注5)
CALL QAUTOLOG.BAT(注6)
%DRIVE%
SET HOME=%DRIVE%\%USERNAME%
CD %HOME%
MD %HOME%\TEMP  NUL
SET TEMP=%HOME%\TEMP
SET TMP=%HOME%\TEMP
SET COMSPEC=%WINDIR%\COMMAND.COM
SET WINBOOTDIR=%WINDIR%
LH QUALREG %HOME%(注7)
%WINDIR%\USERCMD.BAT

注1:其中的%DRIVE%\LITENET因为我把LITENET中的所有程序都拷到了服务器共享目录下的LITENET子目录下,并把它设为搜索路径。这样我可以只把QUALCNX.EXE留在软盘的WINBOOT目录中。
注2:设置实模式下连网所需的网络缓冲大小。注意:以运行下的QUALCNX.EXE 不死机为标准(太小了,运行QUALCNX.EXE会死机,但大家要注意,由于它引起的死机一般是假死,也就是说此时键盘还有反应的。
注3:这个命令实现了实模式下的连网。用通用账号LNGUEST(默认口令也是LNGUEST)远程登陆到NT或W2K服务器上。所以我们必须在服务器首先创建用户LNGUEST,口令设为LNGUEST并设置充许远程登陆。我们通常的做法是在服务器, 建立一个全局组,把用户LNGUEST和下面要用到的用户(如 WIN01、WIN02、WIN03.........等)都归于这个组。QUALCNX是通过WINDOWS自带的实模式下的网络命令NET.EXE来实现实模式下的连网的。它是内部通过调用以下命令来实现的:
1、SNAPSHOT.EXE /S /B:A /M:140 (说明:这个命令是设置实模式下的网络缓冲,其中140是通过上行(SET NETBUFF=140)的环境变量NETBUFF来传递的,它将设网络缓冲大小为140K)。
2、NET.EXE START IPX /Y NUL (说明:这个命令实现在工作站上开始用IPX协议的网络服务,它会通过IPX协议实现工作站与服务器之间的连接。
3、NET.EXE LOGON LNGUEST LNGUEST/SAVEPW:NO /Y NUL (说明:这个命令是用账号LNGUEST远程登陆到服务器上)。
4、NET.EXE USE C: \\服务器名\共享目录名 /Y (说明:这个命令把盘C连接到共享目录上,使C盘变成一个网络驱动器。这里的盘C是通过上面的环境变量DRIVE来传递的;这里的服务名是通过上面的环境变量SERVER来传递的;这里的共享目录名是通过上面的环境变量SHARE来传递的。运行这个时如果网络缓冲设得太小会出现死机,并且这种死机现象是键盘还有反应。
5、NET.EXE TIME \\服务器名 /SET /YES NUL (说明:这个命令将会使工作站的时钟与服务器的时钟同步)。
6、NET.EXE CONFIG /YES 临时文件名 (说明:得到工作站的网络配制信息)。
QUALCNX除了通过WINDOWS自带的实模式下的网络命令NET.EXE来实现实模式下的连网外,它还要通过读取工作站的网卡节点地址、 及通过读取NETNAMES.DB(这个是在服务器共享目录下的WINDOWS目录中)文件获得无盘98入口目录来创建USERNAME.BAT的 批处理文件,这个批处理的主要功能是设置三个环境变量:USENAME(用户名)、HWA(网卡节点地址)及CHN(无盘98入口目录)。
QUALCNX是否成功是实模式连网的关键。它将使用以下文件:
1、WINDOWS自带的:NET.EXE、PROTMAN.DOS、PROTMAN.EXE、SNAPSHOT.EXE及NDISHLP.SYS。请大家注意,这些文件不能使用中文WINDOWS 98自带的,否则将会出现:或死机(这种死机将非常切底,连键盘都没有反应。大多是由于使用了中文WINDOWS 98自带的NET.EXE所引起)或实模式连网不能正常完成。我们一般用WINDOWS 97 或英文WINDOWS 98中的这些文件代替,小心!!!
2、最小注册表文件SYSTEM.DAT及PROTOCOL.INI。这二个反应了实模式下的网络配置信息,如果实模式下的网络配置不正确,它们反应的网络配置信息也不正确,同样会引起实模式连网不能正常完成。但要说明的是,它不会引任何的死机现象。
3、实模式下的网卡驱动程序*.DOS(如8029的是PCIND.DOS)。
注4:批处理USERNAME.BAT的主要功能是设置三个环境变量:USENAME(用户名)、HWA(网卡节点地址)及CHN(无盘98入口目录)。
注5:QAUTOLOG.EXE主要是实现自动登陆时所必须的。自动登陆的机理是:先用一个通用账号(如上面的LNGUEST是默认的)通过QUALCNX 在实模式下连网,QUALCNX又通过读取NETNAMES.DB(这个是在服务器共享目录下的WINDOWS目录中)文件获得无盘98入口目录来创建USERNAME.BAT的批处理文件设置环境变量CHN(无盘98入口目录),QAUTOLOG.EXE就是通过环境变量CHN,用它的值来做用用户名又一重新登陆到服务器来实现的。同时QAUTOLOG.EXE在A盘上生成二个文件:QAUTOLOG.BAT和QAUTOLOG.REG。
1、QAUTOLOG.BAT的功能是重新设置上面的三个环境变量:USENAME(用户名)、HWA(网卡节点地址)及CHN(无盘98入口目录)。
2、QAUTOLOG.REG是一个注册表信息文件,它包含了在WINDOWS中用户自动登陆WINDOWS的一些注册项信息。它的主要作用是在WINDOWS 启动后不出现那个用户登陆的信息框还实现在WINDOWS中也自动登陆。
注6:QAUTOLOG.BAT的功能是重新设置上面的三个环境变量:USENAME(用户名)、HWA(网卡节点地址)及CHN(无盘98入口目录)。
注7:QUALREG.EXE 是DOS实模式管理注册表工具,该工具可以让WIN9X自动到您指定的文件夹中找启动的注册表语法: QUALREG [/R | /A] [/S]   ( /R: 替换;/A: (替换) 所有的;/S: 安全)
PATH告诉WIN9X启动WIN.COM后在哪儿找注册表(SYSTEM.DAT,USER.DAT)。
1、若PATH中无SYSTEM.DAT,将从WIN9X中复制一份到PATH。
2、QUALREG将不复制USER.DAT到PATH,除非PATH中没有该文件。
3、如果添加/R, 则WIN9X目录中的系统注册表SYSTEM.DAT将替换指定PATH中的注册表SYSTEM.DAT 文件。
4、添加/A,QUALREG将同时替换PATH中的SYSTEM.DAT和USER.DAT。
5、QUALREG在注册表中记录不可修复错误. 并调用SCANREG修复,但SCANREG是WIN98版本才有,如果 在WIN95系统,会显示UNKNOWN COMMAND OR FILENAME FOR INSTANCE,则添加/S是一个好注意。
6、QUALREG使用环境变量%WINDIR%查找WIN9X注册表文件。
7、当QUALREG设置注册表路径并复制到指定PATH后,将查找一个名为LITENET.REG的文件,若该文件存在, 将LITENET.REG导入到PATH中的注册表,LITENET.REG是在安装LITENET时自动建立的,不可以修改或删除,但可以添加信息。


6、USERCMD.BAT

QUSERMAN %HOME%(注1)
QSETBD %DRIVE%
IF EXIST %HOME%\PATCHED.REG GOTO NOTCHANGE
SET REG=C:\REG(注2)
QPATCH %REG%\CHN.REG %HOME%\PATCHED.REG(注3)
QPATCH %REG%\USER.REG %HOME%\USER.REG
REGEDIT %HOME%\PATCHED.REG
REGEDIT %HOME%\USER.REG
REGEDIT %REG%\NET.REG
IF EXIST %WINDIR%\SYSTEM\TWEAKUI.CPL IF EXIST A:\WINBOOT\QAUTOLOG.REG REGEDIT A:\WINBOOT\QAUTOLOG.REG
:NOTCHANGE
QRESTALL
QVMEM S: %SERVER% %USERNAME%(注4)
%WINDIR%\WIN.COM

注1:该工具用来设置NETBIOS计算机名。语法NETNAME [包含计算机网卡和名字的数据文件](文件默认为NETNAMES.DB,当然需要可以自己指定。)QNETNAME查找到一个数据文件(包括网卡ID和名字),然后建立一个BAT文件设置变量CHN,并将计算机的名字导入到注册表。QNETNAME 默认这个数据文件是%WINDIR%\NetNames.DB。QNETNAME支持数据文件的语法格式:在一行开头或末尾有空格的行、开头有#标记的忽略。开头为非#的字符串,若干空格后为网卡ID为确认格式。 如果QNETNAME在数据文件中没有找到网卡ID,将会挂起,并询问您是否自动为该计算机的网卡ID和名字保存在NETNAMES.DB中。 QNETNAME 将在TEMP变量对应的文件夹中建立一个文件QNETNAME.BAT。QNBNAME.BAT 必须在QNETNAME返回变量CHN的值后被调用。CHN变量可以被以后的BAT文件使用或者被QPATHCH命令替代在%WINDIR%\usercmd.bat 中的QNETNAME.EXE和CALL %TEMP%\QNBNAME.BAT两行命令必须在WIN9X被启动之前运行。注意:当运行QNETNAME后,LITENT PC状态如下:
1、当QUALCNX运行连接 %DRIVE% to \\%SERVER%\%SHARE% 用户名和密码。
2、如CHN变量没有设置,则QNETNAME从NETNAMES.DB中得到。
3、QNETNAME自动修改注册表以便WIN9X启动后得到正确的计算机名。
必须在 %WINDIR%\NetNAMES.DB 中填写工作站计算机的名字和网卡ID QNETNAME 使远程工作站使用同一个影象文件成为可,在QNETNAME管理下,安装多个客户非常容易:管理人员只要在NETNAMES.DB中填写NAME 和网卡ID, 并在\\SERVER\SHARE中建立文件夹NAME(就是工作站PC的名字)。另外有两点需要注意:
1、QNETNAME并没有复制到启动软盘中,为方便在USERCMD.BAT中开头填写一行内容即可: PATH %PATH%&#59;C:\WINDOWS\LITENET 。
2、QNETNAME 必须在QUALREG.EXE启动之后,而在WIN9X启动(WIN.COM)之前运行。
注2:因为我把我一些注册表REG文件都COPY到了服务器的共享目录的REG目录下。为了方便,故设环境变量REG。
注3:QPATCH是DOS模式使用的一个优化文件和注册表补丁工具。语法:QPATCH [Patched File]  QPATCH 源文件 [新文件名]
说明:QPATCH可以在WIN32环境中使用,但要受到一些限制, QPATCH32只能在WIN32环境中(WIN9X/NT/WIN200), QPATCH32能调用WIN32中的环境变量。
QPATCH和QPATCH32 是文本文件补丁程序,工作方式几乎相同,除上面的区别说明外。
QPATCH执行后替换注册表REG文件中的所有的{%环境变量%}为环境变量的值。如{%WINDIR%}将变为C:\WINDOWS。QPATCH需要两个参数:第一个为源文件.若命令行中只有一个参数,则第二个参数默认为显示器, 若有两个参数, 则第二个为补丁文件名(最好不要与已经存在的文件同名(不然会被覆盖)。
当启动无盘站PC,不同的PC对应由于有不同的CHN,所以使用同一个注册表文件而显示的计算机名却不同,效果很好!
QPATCH非常强大的工具,使得多个客户机器使用同一个文件,而每台客户机器显示的信息却又相互不同。
注意:QPATCH 并没有复制到LITENET PC启动软盘中,在服务器的共享WINDOWS中CHN.REG是通过把注册表中的用户信息(主要指是注册表文件USER.DAT中的.DEFAULT分支指)导出来后,然后把所有的.DEFAULT改为{%CHN%}所得。
注4:QVMEM.EXE的作用有二个:
1、把盘S连接到服务器的用户目录,使它成为一个网络驱动器。
2、网络驱动器S可为WINDOWS 98虚拟内存交换文件提供硬盘空间(模拟成本地硬盘)。
当然要想使无盘98能使用虚拟内存还必用这一步与SYSTEM.INI配合。在SYSTEM.INI的[386Enh]小节中必加上以下三行:
PagingDrive=S
MinPagingFileSize=100
MaxPagingFileSize=200
并且“ PagingDrive=S ”中的盘符S要与这个命令中的盘符一致。


7、PROTOCOL.INI[protman$]

DriverName=protman$
priority=NDISHLP$
[ndishlp$]
DriverName=ndishlp$
Bindings=PCIND$
[data]
version=v4.10.1998
netcards=PCIND$
[nwlink$]
DriverName=nwlink$
Frame_Type=4
cachesize=0
Bindings=PCIND$
[PCIND$]
DriverName=PCIND$

8、SYSTEM.INI

[386Enh]
PagingDrive=S:
MinPagingFileSize=100
MaxPagingFileSize=200

9、MINI.REG(最小注册表的REG文件)

REGEDIT4
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion]
SystemRoot=C:\\WINDOWS
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Setup]
WinBootDir=A:\\WINBOOT
WinDir=C:\\WINDOWS
SharedDir=C:\\WINDOWS
SysDir=C:\\WINDOWS\\SYSTEM
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Setup\WinBootDir]
DevDir=A:\\WINBOOT
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Network\Real Mode Net]
transport=*nwlink,*netbeui,ndishlp.sys
netcard=pcind.dos (注1)
LoadRMDrivers=hex:00,00,00,00
preferredredir=
SetupNPath=C:\\WINDOWS\\
StaticDrive=C,c
SetupN=hex:01
Transition=hex:01
[HKEY_LOCAL_MACHINE\Network\Logon]
UserName=LNGUEST (注2)
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]
Workgroup=LDLJLZW (注3)
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSNP32\NetworkProvider]
AuthenticatingAgent=LDLJLZW (注4)
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NWNP32\NetworkProvider]
AuthenticatingAgent=LDLJLZW
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ComputerName]
ComputerName=LZW (注5)

注1:实模式下的网卡驱动程序文件名。
注2:默认的登陆网络的用户名。
注3:工作站计算机的工作组名,建议改为NT或W2K服务器的域名
注4:NT或W2K服务器的域名(最好我们装服务器时装为域控服务器)。
注5:工作站计算机的计算机名

10、NET.REG

REGEDIT4
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Network\Real Mode Net]
transport=*nwlink,*netbeui,ndishlp.sys
netcard=rtsnd.dos
LoadRMDrivers=hex:00,00,00,00
preferredredir=
SetupNPath=C:\\WINDOWS\\
StaticDrive=C,c
SetupN=hex:01
Transition=hex:01
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]
Workgroup=LDLJLZW
StaticVxD=vnetsup.vxd
Start=hex:00
NetClean=hex:01
MaintainServerList=2
LMAnnounce=0
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\TCPIP]
StaticVxD=vtdi.386,vip.386,vtcp.386,vdhcp.386,vnbt.386
Start=hex:00
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSNP32\NetworkProvider]
AuthenticatingAgent=LDLJLZW
LogonDisconnected=hex:00,00,00,00
Name=Microsoft Network
ProviderPath=msnp32.dll
Description=Microsoft Network
NetID=hex:00,00,01,00
CallOrder=hex:00,00,00,40
DisableReLogin=hex:00,00,00,00
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NWNP32\NetworkProvider]
GroupFcn=GROUPPOL.DLL,NWGetUserGroups
AuthenticatingAgent=LDLJLZW

11、USER.REG

REGEDIT4
[HKEY_LOCAL_MACHINE\SYSTEM\CURRENTCONTROLSET\CONTROL]
Current User={%CHN%}
[HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\WINLOGON]
AutoAdminLogon=1
DefaultUserName={%CHN%}
DefaultPassword={%CHN%}
[HKEY_LOCAL_MACHINE\NETWORK\LOGON]
PolicyHandler=GROUPPOL.DLL,ProcessPolicies
PrimaryProvider=MicroSoft 友好登录
LMLogon=hex:01,00,00,00
LogonValidated=hex:01,00,00,00
UserProfiles=dword:00000000
DontShowLastUser=dword:00000000
UserName={%CHN%}

12、QAUTOLOG.REG

REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Winlogon]
AutoAdminLogon=1
DefaultUserName=WIN01
DefaultPassword=WIN01
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices]
AutoLog=RUNDLL32.EXE TWEAKUI.CPL,TweakLogon
[HKEY_LOCAL_MACHINE\Network\Logon]
DontShowLastUser=dword:00000000
UserName=WIN01



作者: suncon    时间: 2003-11-3 02:25
标题: Pxe技术无盘win98的应用
安装PXE时一些文件的解释

1、CONFIG.SYS
。。。。。。。。。。。。。
STACKS=9,256(堆饯最小9,最大256)
2、AUTOEXEC.BAT
@echo off
cd \winboot

call setvars.bat
REM 上面的setvars批处理是设置无盘98启动时所需要的一些环境变量。
REM 如 服务器名,共享目录名,windows所在的盘,windows所在目录,
REM 实模式下的网卡驱动程序文件名等。

startnet.bat
REM 上面的startnet批处理是实现实模式连网,并为无盘98启动做好准备。

3、SETVARS.BAT
SET WINDIR=C:\WINDOWS
REM WINDOWS所在的目录名

SET DRIVE=C:
REM WINDOWS所在的盘符

SET NETCARD=PCIDN.DOS
REM 实模式下的网卡驱动程序名

SET SERVER=SERVER
REM NT或W2K服务器名

SET SHARE=WINDISK
REM WINDOWS所在服务器里的共享目录名

CALL TUNING.BAT
REM 批处理TUNING实现把保护模式下的驱动程序拷到虚拟C盘

4、TUNING.BAT
@ECHO OFF
IF EXIST %WINDIR%\NULL GOTO MD_SYSTEM
MD %WINDIR% NUL
REM 在虚拟C盘中建立一个WINDOWS目录

:MD_SYSTEM
IF EXIST %WINDIR%\SYSTEM\NULL GOTO COPY_RPL
MD %WINDIR%\SYSTEM NUL
REM 在虚拟C盘中的WINDOWS目录下建立一个SYSTEM目录

:COPT_RPL
IF EXIST %WINDIR%\SYSTEM\RTL8029.SYS GOTO COPY_END
COPY A:\WINBOOT\RTL8029.SYS %WINDIR%\SYSTEM NUL
REM 把保护模式下的驱动程序从A盘的WINBOOT目录下拷到虚拟C盘的WINDOWS\SYSTEM
REM 目录下

:COPY_END
@ECHO ON

5、STARTNET.BAT
@ECHO OFF
SET COMSPEC=A:\COMMAND.COM
SET PATH=%WINDIR%&#59;%WINDIR%\COMMAND&#59;%DRIVE%\LITENET
REM 其中的%DRIVE%\LITENET因为我把LITENET中的所有程序都拷到了服务器共享目录
REM 下的LITENET子目录下,并把它设为搜索路径。这样我可以只把QUALCNX.EXE留在
REM 软盘的WINBOOT目录中。

SET TEMP=A:\WINBOOT

SET NETBUFF=140

REM 设置实模式下连网所需的网络缓冲大小。
REM 注意:以运行下的QUALCNX.EXE 不死机为标准(太小了,运行QUALCNX.EXE会
REM 死机,但大家要注意,由于它引起的死机一般是假死,也就是说此时键盘还有
REM 反应的。

LH QUALCNX LNGUEST LNGUEST

REM 这个命令实现了实模式下的连网。用通用账号LNGUEST(默认口令也是LNGUEST)远程登陆到NT或W2K服务器上。
REM 所以我们必须在服务器首先创建用户LNGUEST,口令设为LNGUEST并设置充许远程登陆。我们通知常的做法是在服务器
REM 建立一个全局组,把用户LNGUEST和下面要用到的用户(如 WIN01、WIN02、WIN03.........等)都归于这个组。

REM QUALCNX是通过WINDOWS自带的实模式下的网络命令NET.EXE来实现实模式下的连网的。它是内部通过调用以下命令来实现的:
REM 1、SNAPSHOT.EXE /S /B:A /M:140 (说明:这个命令是设置实模式下的网络缓冲,其中140是通过上行(SET NETBUFF=140)的环境
REM 变量NETBUFF来传递的,它将设网络缓冲大小为140K)。
REM 2、NET.EXE START IPX /Y NUL (说明:这个命令实现在工作站上开始用IPX协议的网络服务,它会通过IPX协议实现工作站与服务
REM 器之间的连接。
REM 3、NET.EXE LOGON LNGUEST LNGUEST/SAVEPW:NO /Y NUL (说明:这个命令是用账号LNGUEST远程登陆到服务器上)
REM 4、NET.EXE USE C: \\服务器名\共享目录名 /Y (说明:这个命令把盘C连接到共享目录上,使C盘变成一个网络驱动器。这里的盘C是
REM 通过上面的环境变量DRIVE来传递的;这里的服务名是通过上面的环境变量SERVER来传递的;这里的共享目录名是通过上面的环境
REM 变量SHARE来传递的。运行这个时如果网络缓冲设得太小会出现死机,并且这种死机现象是键盘还有反应。
REM 5、NET.EXE TIME \\服务器名 /SET /YES NUL (说明:这个命令将会使工作站的时钟与服务器的时钟同步)。
REM 6、NET.EXE CONFIG /YES 临时文件名 (说明:得到工作站的网络配制信息)。

REM QUALCNX除了通过WINDOWS自带的实模式下的网络命令NET.EXE来实现实模式下的连网外,它还要通过读取工作站的网卡节点地址、
REM 及通过读取NETNAMES.DB(这个是在服务器共享目录下的WINDOWS目录中)文件获得无盘98入口目录来创建USERNAME.BAT的
REM 批处理文件,这个批处理的主要功能是设置三个环境变量:USENAME(用户名)、HWA(网卡节点地址)及CHN(无盘98入口目录)。

REM QUALCNX是否成功是实模式连网的关键。它将使用以下文件:
REM 1、WINDOWS自带的:NET.EXE、PROTMAN.DOS、PROTMAN.EXE、SNAPSHOT.EXE及NDISHLP.SYS。请大家注意,这些文件不能使用
REM 中文WINDOWS 98自带的,否则将会出现:或死机(这种死机将非常切底,连键盘都没有反应。大多是由于使用了中文WINDOWS 98
REM 自带的NET.EXE所引起)或实模式连网不能正常完成。我们一般用WINDOWS 97 或英文WINDOWS 98中的这些文件代替,OK,小心!!!
REM 2、最小注册表文件SYSTEM.DAT及PROTOCOL.INI。这二个反应了实模式下的网络配置信息,如果实模式下的网络配置不正确,它
REM 们反应的网络配置信息也不正确,同样会引起实模式连网不能正常完成。但要说明的是,它不会引任何的死机现象。我自己做了个
REM 最小注册表的REG文件(MINI.REG),大家可以通过改小部分地方后通过 REGEDIT /L:SYSTEM.DAT /C MINI.REG 生成最小注册表
REM 文件SYSTEM.DAT来帮我测试一下。(文件MINI.REG见“我的文件.ZIP”)。
REM 3、实模式下的网卡驱动程序*.DOS(如8029的是PCIND.DOS)。
REM 4、COMMAND.COM文件。
REM 这些文件一般要放在A盘的WINBOOT目录下。只有COMMAND.COM文件是放在A盘根目录下的。


CALL %TEMP%\USERNAME.BAT
REM 批处理USERNAME.BAT的主要功能是设置三个环境变量:USENAME(用户名)、HWA(网卡节点地址)及CHN(无盘98入口目录)

QAUTOLOG.EXE
REM QAUTOLOG.EXE主要是实现自动登陆时所必须的。自动登陆的机理是:先用一个通用账号(如上面的LNGUEST是默认的)通过QUALCNX
REM 在实模式下连网,QUALCNX又通过读取NETNAMES.DB(这个是在服务器共享目录下的WINDOWS目录中)文件获得无盘98入口目录来
REM 创建USERNAME.BAT的批处理文件设置环境变量CHN(无盘98入口目录),QAUTOLOG.EXE就是通过环境变量CHN,用它的值来做用
REM 用户名又一重新登陆到服务器来实现的。
REM 同时QAUTOLOG.EXE在A盘上生成二个文件:QAUTOLOG.BAT和QAUTOLOG.REG。
REM 1、QAUTOLOG.BAT的功能是重新设置上面的三个环境变量:USENAME(用户名)、HWA(网卡节点地址)及CHN(无盘98入口目录)。
REM 2、QAUTOLOG.REG是一个注册表信息文件,它包含了在WINDOWS中用户自动登陆WINDOWS的一些注册项信息。它的主要作用是在WINDOWS
REM 启动后不出现那个用户登陆的信息框还实现在WINDOWS中也自动登陆。但有BUG,解决方法见我下面的说明。

CALL QAUTOLOG.BAT
REM QAUTOLOG.BAT的功能是重新设置上面的三个环境变量:USENAME(用户名)、HWA(网卡节点地址)及CHN(无盘98入口目录)。


%DRIVE%
SET HOME=%DRIVE%\%USERNAME%
CD %HOME%
MD %HOME%\TEMP  NUL
SET TEMP=%HOME%\TEMP
SET TMP=%HOME%\TEMP
SET COMSPEC=%WINDIR%\COMMAND.COM
SET WINBOOTDIR=%WINDIR%

LH QUALREG %HOME%
REM QUALREG.EXE 是DOS实模式管理注册表工具,该工具好:可以让WIN9X自动到您指定的文件夹中找启动的注册表
REM 语法: QUALREG [/R | /A] [/S]
REM /R: 替换;/A: (替换) 所有的;/S: 安全
REM PATH告诉WIN9X启动WIN.COM后在哪儿找注册表(SYSTEM.DAT,USER.DAT).
REM 1、若PATH中无SYSTEM.DAT,将从WIN9X中复制一份到PATH.
REM 2、QUALREG将不复制USER.DAT到PATH,除非PATH中没有该文件
REM 3、如果添加/R, 则WIN9X目录中的系统注册表SYSTEM.DAT将替换指定PATH中的注册表SYSTEM.DAT 文件
REM 4、添加/A,QUALREG将同时替换PATH中的SYSTEM.DAT和USER.DAT
REM 5、QUALREG在注册表中记录不可修复错误. 并调用SCANREG修复,但SCANREG是WIN98版本才有,如果
REM 在WIN95系统,会显示UNKNOWN COMMAND OR FILENAME FOR INSTANCE,则添加/S是一个好注意
REM 6、QUALREG使用环境变量%WINDIR%查找WIN9X注册表文件
REM 7、当QUALREG设置注册表路径并复制到指定PATH后,将查找一个名为LITENET.REG的文件,若该文件存在,
REM 将LITENET.REG导入到PATH中的注册表,LITENET.REG是在安装LITENET时自动建立的,不可以修改或删除,但可以添加信息(wait for next...)

%WINDIR%\USERCMD.BAT

6、USERCMD.BAT
QUSERMAN %HOME%
REM 该工具用来设置NETBIOS计算机名.
REM 语法NETNAME [包含计算机网卡和名字的数据文件](文件默认为NETNAMES.DB,当然需要可以自己指定.)
REM QNETNAME查找到一个数据文件(包括网卡ID和名字),然后建立一个BAT文件设置变量CHN,并将计算机的名字导入到注册表.
REM QNETNAME 默认这个数据文件是%WINDIR%\NetNames.DB.
REM QNETNAME 支持数据文件的语法格式:在一行开头或末尾有空格的行、开头有#标记的忽略。开头为非#的字符串,若干空格后为网卡ID为确认格式。
REM 如果QNETNAME在数据文件中没有找到网卡ID,将会挂起,并询问您是否自动为该计算机的网卡ID和名字保存在NETNAMES.DB中。
REM QNETNAME 将在TEMP变量对应的文件夹中建立一个文件QNETNAME.BAT. QNBNAME.BAT 必须在QNETNAME返回变量CHN的值后被调用.
REM CHN变量可以被以后的BAT文件使用或者被QPATHCH命令替代
REM 在%WINDIR%\usercmd.bat 中的QNETNAME.EXE和CALL %TEMP%\QNBNAME.BAT两行命令必须在WIN9X被启动之前运行.

REM 注意:E当运行QNETNAME后,LITENT PC状态如下:
REM 1、当QUALCNX运行连接 %DRIVE% to \\%SERVER%\%SHARE% 用户名和密码。
REM 2、如CHN变量没有设置,则QNETNAME从NETNAMES.DB中得到。
REM 3、QNETNAME自动修改注册表以便WIN9X启动后得到正确的计算机名。

REM 必须在 %WINDIR%\NetNAMES.DB 中填写工作站计算机的名字和网卡ID
REM QNETNAME 使远程工作站使用同一个影象文件成为可,在QNETNAME管理下,安装多个客户非常容易:管理人员只要在NETNAMES.DB中填写NAME 和网卡ID,
REM 并在\\SERVER\SHARE中建立文件夹NAME(就是工作站PC的名字)
REM 注意:1、QNETNAME并没有复制到启动软盘中,为方便在USERCMD.BAT中开头填写一行内容即可: PATH %PATH%&#59;C:\WINDOWS\LITENET
REM 2、QNETNAME 必须在QUALREG.EXE启动之后,而在WIN9X启动(WIN.COM)之前运行

QSETBD %DRIVE%

IF EXIST %HOME%\PATCHED.REG GOTO NOTCHANGE
SET REG=C:\REG
REM 因为我把我一些注册表REG文件都COPY到了服务器的共享目录的REG目录下。为了方便,故设环境变量REG。

QPATCH %REG%\CHN.REG %HOME%\PATCHED.REG
REM QPATCH是DOS模式使用的一个优化文件和注册表补丁工具。
REM 语法:QPATCH [Patched File]
REM QPATCH 源文件 [新文件名]
REM 说明:QPATCH可以在WIN32环境中使用,但要受到一些限制, QPATCH32只能在WIN32环境中(WIN9X/NT/WIN200), QPATCH32能调用WIN32中的环境变量。
REM QPATCH和QPATCH32 是文本文件补丁程序,工作方式几乎相同,除上面的区别说明外。

REM QPATCH执行后替换注册表REG文件中的所有的{%环境变量%}为环境变量的值。如{%WINDIR%}将变为C:\WINDOWS。

REM QPATCH需要两个参数:第一个为源文件.若命令行中只有一个参数,则第二个参数默认为显示器,
REM 若有两个参数, 则第二个为补丁文件名(最好不要与已经存在的文件同名(不然会被覆盖)。

REM 当启动无盘站PC,不同的PC对应由于有不同的CHN,所以使用同一个注册表文件而显示的计算机名却不同,效果很好!
REM QPATCH非常强大的工具,使得多个客户机器使用同一个文件,而每台客户机器显示的信息却又相互不同。
REM 注意:QPATCH 并没有复制到LITENET PC启动软盘中,在服务器的共享WINDOWS中


REM CHN.REG是通过把注册表中的用户信息(主要指是注册表文件USER.DAT中的.DEFAULT分支指)导出来后,然后把所有的.DEFAULT改为
REM {%CHN%}所得。
REM 对这一起步是不必要有不同的看法。有人说这一步不必要做,也许有他的理由。但我认为做这一步还是有必要的,我也曾经试着不做这一步。
REM 无盘WINDOWS 98还是可以启动的,但容易出一些莫名其妙的问题。有人讲工作站的网络配置中不能加文件及打印共享,我怀疑就是这一步没
REM 做。因为我这里是这样做的,在工作站的网络配置中也加了文件及打印共享(实其我的网络配置中什么都加了,一直是这样的),却从来都
REM 没有出过问题。当然我得声明,由于他的反面试验(工作站的网络配置中加了文件及打印共享而这一步不做)我没认真的测试过,所以只能
REM 说怀疑,并且由于不机器的硬件配制不同,所以引起问题的原因很多,由于我的条件不允许,大多的结论是理论加推测罢,不可深信,即然
REM 做为论谈,我想大家都能谈论自己的看,如有不对的地方,请大家指出、更正。如果有条件的朋友可以从正、反或不同硬件的机器来测试一
REM 下,我的主张是从实践中得到一个最本质、最普遍、最正确的结论,然后得到一个最正确的理论系统,为大家服务,这就是我论谈的宗旨。


QPATCH %REG%\USER.REG %HOME%\USER.REG
REM 用QPATCH修复注册表REG文件USER.REG,USER.REG是我做的一个用于自动登陆到WINDOWS上而不出现用户登陆信息框的REG文件。
REM 前面我已经讲了,由于QAUTOLOG.EXE产生的用于自动登陆的QAUTOLOG.REG文件有BUG,故我用USER.REG来修复。

REGEDIT %HOME%\PATCHED.REG
REGEDIT %HOME%\USER.REG
REM 把已经修复后的PATCHED.REG和USER.REG里的注册信息导入到用户的注册表。

REGEDIT %REG%\NET.REG
REM 把一些启动无盘98所必要的注册表信息由注册表REG文件NET.REG中导入到用户注册表中去(这是用动态的方法)计算机

IF EXIST %WINDIR%\SYSTEM\TWEAKUI.CPL IF EXIST A:\WINBOOT\QAUTOLOG.REG REGEDIT A:\WINBOOT\QAUTOLOG.REG
REM 把这个软件自带的自动登陆注册表REG文件QAUTOLOG.REG中的注册信息导入到用户注册表中去。

:NOTCHANGE

QRESTALL
REM 这个命令的作用不详。
REM 不过从论谈前面各位朋友的粘子上可知道一点,如果无盘98 启动后报内存不够或有病毒是由于这个命令没加的原故。
REM 由些我可猜想这个东东可能是个修复DOS内存的东西。


QVMEM S: %SERVER% %USERNAME%
REM QVMEM。EXE的作用有二个:
REM 1、把盘S连接到服务器的用户目录,使它成为一个网络驱动器。
REM 2、网络驱动器S可为WINDOWS 98虚拟内存交换文件提供硬盘空间(模拟成本地硬盘)。
REM 当然要想使无盘98能使用虚拟内存还必用这一步与SYSTEM.INI配合。
REM 在SYSTEM.INI的[386Enh]小节中必加上以下三行:
REM PagingDrive=S
REM MinPagingFileSize=100
REM MaxPagingFileSize=200
REM 并且“ PagingDrive=S ”中的盘符S要与这个命令中的盘符一至。


%WINDIR%\WIN.COM

7、PROTOCOL.INI[protman$]
DriverName=protman$
priority=NDISHLP$

[ndishlp$]
DriverName=ndishlp$
Bindings=PCIND$

[data]
version=v4.10.1998
netcards=PCIND$ ;实模式下的网卡

[nwlink$] ;IPX/SPX协议
DriverName=nwlink$ ;IPX/SPX协议名
Frame_Type=4 ;帧类型为4是自动
cachesize=0 ;缓冲大小为0
Bindings=PCIND$ ;绑定到实模式下的网卡驱动程序

[PCIND$] ;实模式下的网卡驱动程序
DriverName=PCIND$ ;实模式下的网卡驱动程序名为PCIND.DOS

8、SYSTEM.INI
[386Enh]
PagingDrive=S:
MinPagingFileSize=100
MaxPagingFileSize=200

9、MINI.REG(最小注册表的REG文件)
REGEDIT4

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion]
“SystemRoot“=“C:\\WINDOWS“

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Setup]
“WinBootDir“=“A:\\WINBOOT“
“WinDir“=“C:\\WINDOWS“
“SharedDir“=“C:\\WINDOWS“
“SysDir“=“C:\\WINDOWS\\SYSTEM“

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Setup\WinBootDir]
“DevDir“=“A:\\WINBOOT“

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Network\Real Mode Net]
“transport“=“*nwlink,*netbeui,ndishlp.sys“
“netcard“=“pcind.dos“ ;实模式下的网卡驱动程序文件名,要改
“LoadRMDrivers“=hex:00,00,00,00
“preferredredir“=““
“SetupNPath“=“C:\\WINDOWS\\“
“StaticDrive“=“C,c“
“SetupN“=hex:01
“Transition“=hex:01

[HKEY_LOCAL_MACHINE\Network\Logon]
“UserName“=“LNGUEST“ ;默认的登陆网络的用户名,可不改

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]
“Workgroup“=“LDLJLZW“ ;工作站计算机的工作组名,建议改为NT或W2K服务器的域名

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSNP32\NetworkProvider]
“AuthenticatingAgent“=“LDLJLZW“ ;NT或W2K服务器的域名(最好我们装服务器时装为域控服务器),要改

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NWNP32\NetworkProvider]
“AuthenticatingAgent“=“LDLJLZW“ ;NT或W2K服务器的域名(最好我们装服务器时装为域控服务器),要改

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ComputerName]
“ComputerName“=“LZW“ ;工作站计算机的计算机名

10、NET.REG
REGEDIT4

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Network\Real Mode Net]
“transport“=“*nwlink,*netbeui,ndishlp.sys“
“netcard“=“rtsnd.dos“
“LoadRMDrivers“=hex:00,00,00,00
“preferredredir“=““
“SetupNPath“=“C:\\WINDOWS\\“
“StaticDrive“=“C,c“
“SetupN“=hex:01
“Transition“=hex:01

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]
“Workgroup“=“LDLJLZW“
“StaticVxD“=“vnetsup.vxd“
“Start“=hex:00
“NetClean“=hex:01
“MaintainServerList“=“2“
“LMAnnounce“=“0“

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\TCPIP]
“StaticVxD“=“vtdi.386,vip.386,vtcp.386,vdhcp.386,vnbt.386“
“Start“=hex:00

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSNP32\NetworkProvider]
“AuthenticatingAgent“=“LDLJLZW“
“LogonDisconnected“=hex:00,00,00,00
“Name“=“Microsoft Network“
“ProviderPath“=“msnp32.dll“
“Description“=“Microsoft Network“
“NetID“=hex:00,00,01,00
“CallOrder“=hex:00,00,00,40
“DisableReLogin“=hex:00,00,00,00

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NWNP32\NetworkProvider]
“GroupFcn“=“GROUPPOL.DLL,NWGetUserGroups“
“AuthenticatingAgent“=“LDLJLZW“

11、USER.REG
REGEDIT4

[HKEY_LOCAL_MACHINE\SYSTEM\CURRENTCONTROLSET\CONTROL]
“Current User“=“{%CHN%}“

[HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\WINLOGON]
“AutoAdminLogon“=“1“
“DefaultUserName“=“{%CHN%}“
“DefaultPassword“=“{%CHN%}“

[HKEY_LOCAL_MACHINE\NETWORK\LOGON]
“PolicyHandler“=“GROUPPOL.DLL,ProcessPolicies“
“PrimaryProvider“=“MicroSoft 友好登录“
“LMLogon“=hex:01,00,00,00
“LogonValidated“=hex:01,00,00,00
“UserProfiles“=dword:00000000
“DontShowLastUser“=dword:00000000
“UserName“=“{%CHN%}“

12、QAUTOLOG.REG
REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Winlogon]
“AutoAdminLogon“=“1“
“DefaultUserName“=“WIN01“
“DefaultPassword“=“WIN01“

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices]
“AutoLog“=“RUNDLL32.EXE TWEAKUI.CPL,TweakLogon“

[HKEY_LOCAL_MACHINE\Network\Logon]
“DontShowLastUser“=dword:00000000
“UserName“=“WIN01“

13、NETNAMES.DB(这个文件你不要动,会自动把MAC写进来的)



作者: suncon    时间: 2003-11-3 02:28
标题: Pxe技术无盘win98的应用
下载个 ’’下一步’’- ’’下一步’’的软件不好好的么?

相关链接 http://www.richtech.net.cn/ 不是广告来的

附件为5.0 破解文件

附件文件_
e5v.com.rar

http://bbs.r51.net/index.php?act=Attachtype=postid=120407






欢迎光临 光电工程师社区 (http://bbs.oecr.com/) Powered by Discuz! X3.2