设为首页
你的,我的,大家的Sjdn!在线投稿
注册 | 社区 | 军事
登录 | 搜索 | 投稿

PXE 无盘网络疑难解答

字号:T|T
深入PXE无盘网络-命令详解 

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%;%WINDIR%\COMMAND;%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来传递的。运行这个时如果网络缓冲设得太小会出现死机,并且这

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计算机名。语法:QNETNAME [包含计算机网卡和名字的数据文件](文件默认为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%;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"  

深入PXE无盘网络-常见问题

--------------------------------------------------------------------------------

1、 开机时,出现一个“性能警告”,内容为:计算机可能有病毒,计算机的主引导记录已修改,是否参阅有关此问题的相关信息?选择“否”后进入系统,能正常使用。怎样去掉这个提示?

答:有两种方法:1)只要把USERCMD.BAT中的QrestAll命令前的rem去掉即可。

2)启动一台无盘工作站,例如P01 ,用“控制面板”将硬盘控制器删除,然后在服务器端将P01目录下的SYSTEM.dat复制到windows目录下。此时所有工作站便不会出现病毒警告了。  

2、 工作站启动过程中出现以下错误提示:

Error(Destination File):Permisino 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的版本的。

友情提示:转载请注明出处
http://www.sjdn.net

[错误报告] [推荐] [收藏] [打印] [关闭] [返回顶部]

新闻48小时评论排行

  1. 1 怎么用displayx测电脑屏幕 评论0
  2. 2 红米9A导航建 评论0

图片新闻