论坛: 病毒专区 标题: windows多重启动菜单恢复手记  复制本贴地址    
作者: CyberSpy [cyberspy]    论坛用户   登录
windows多重启动菜单恢复手记 

作者:CyberSpy
Email:duguqiuai1357@163.com
QQ:18988418
时间:2002/12/1

   今天下午刚刚踢完球,战果……@#$!^&*&^%$#@~,回来开机是第一要事,不对啊,怎么这么慢,蜗牛啊~以前都是飙起来的啊~第六感告诉我有问题~~ 
   仔细看了一下,近几天去ftp拉了点东西,把关不严,加之这么久还没有装什么杀毒软件和防火墙,可能是中标了~Ctrl+Alt+Del,一看进程有7,8个Wscript.exe(至于WSH就不扯远了),再运行~查找文件:有200来个folder.htt和desktop.ini文件,由于经常在毒霸安全论坛上混,发现是“新欢乐时光”在作怪,由于这个病毒手工完全干净清除有点在我能力范围之外,但是还是有点手勤,又开始查找%windir%\System\中一个名字叫Kernel.dll的文件(Windows 9x/Me盘)或Kernel32.dll(Windows NT/2000盘),特别注意:这两个Kernel文件生成的路径都是%windir%\System\,而不是%windir%\System32\。而Kernel32.dll是系统核心文件,win9x和me在%windows%\system下,win2k和xp在system32文件下!这里很有迷惑性~),它通过修改.dll文件的打开方式达到感染的目的,然后先删除了再说(这里是所有麻烦的开端)~然后用记事本打开folder.htt“看不明白~”,实在还是只有奔腾到毒霸下载专杀工具啦~!然后开始杀毒(这里没有到纯dos下或者安全模式下杀毒又是一个不好的习惯~懒得动手~西西)~提示清除完毕,重新启动,换操作系统(本机装了98、xp、2k,不要骂我“有病”、“神经”玩玩而已嘛~)。恩~?怎么直接关机了~关了就关了,正好去洗澡,吃饭~!又少堕落了,呵呵~
   回来->开机,怎么进98就直接出现“现在你可以安全地关机了”,屏幕上很快闪现了一条提示信息,由于太快,没看清,不管,try it again~依旧那样~完了!是what问题呢?以为是98系统的问题,没理由啊~马上拿来98启动盘,正常启动,没有发现什么问题~是系统被破坏了吗?管他的:SYS C:,成功~重新从硬盘启动,惨啊,还是那样,这次眼睛不敢眨了,一闪好象看见了什么kernel~ 心里一动,莫非是今天kill毒的时候删除kernel.dll的原因~再用启动盘到windows\system 下查看果然kernel32.dll没有了~一定是铲除病毒文件的时候删错了,糊涂啊~ 马上从别人机子上copy一个来,ok~重启动,搞定~ 瘟痘死98进去了~哈哈~以后删文件可得悠着点了,一定要眼睛雪亮点~尤其是系统文件~
   换win2k玩玩,多重启动菜单选择进,恩!~?怎么回事啊?win2k不能引导,出现错误信息:NTLDR is missing   press any key to restart~(NTLDR即NTLoaders,多重系统使用的引导软体)。今天真是出师不利哦~祸不单行!原来是多系统启动坏了,自然而然想到boot.ini。但是修复多启动,不是一个boot.ini就能解决的哦~  
   我们先来看看:系统POST上电自检以后,寻找启动设备,加载主引导记录(master boot record -MBR)到内存,MBR中的程序被执行,然后MBR程序寻找分区引导记录表(partition Boot Record-PBR)发现活动分区,加载该分区中的引导扇区到内存。从引导扇区加载初始化Ntldr,如果安装了NT,则就在系统启动时修改引导分区加载Ntldr,引导顺序(位于预引导之后,为加载NT收集硬件和驱动程序信息,用到ntldr,Boot.ini,Bootsect.dos,Ntdetect.com,Ntoskrnl.exe) ,Ntldr将处理器从实模式->32位平面内存模式,Ntldr启动合适的minifile系统驱动程序,该程序内置于Ntldr中,用于从不同的文件系统(FAT、NTFS)中发现NT。Ntldr读取Boot.ini显示操作系统选择,称为加载引导菜单,Ntldr加载用户选择的操作系统,下列两者发生其一:如果选择了NT,Ntldr运行Ntdetect.com、如果选择了(9x、dos)Ntldr加载并运行Bootsect.dos并将权限交给它,并启动该操作系统,NT引导过程结束。查找其他操作系统,并显示启动选择菜单,让用户确定启动哪个系统:如果选择启动Windows 98\Me,则通过Bootsect.dos来加载Io.sys和Command.com系统文件来引导Windows 98\Me;如果选择启动Windows XP\2k,则直接加载Ntldr、通过Nntdetect.com系统文件来引导Windows XP\2k。(进行多重启动,就必须使用多重启动系统引导软件,一是OS系统本身自带的,比如Linux的lilo,Windows的NTloader,还有的就是第三方的引导软件,比如V communications.inc的System Commander系列,PowerQuest Corporration的BootMagic,SpFdisk等等都是很好的选择。)由于我用Win9x的启动盘系统传送SYS,已经破坏了NT引导记录,自然不能进行2k\xp的引导了~怎么办呢?~下面慢慢道来~
   由于系统没有装在同一个分区,相信决大多数都是这样的~,我只是传了一下win98 系统,也就是说,保存在其他分区中的Windows XP\2k安装文件、设置信息并没有被破坏,因此,无需费时费力地重新安装和设置Windows XP\2k,只要恢复一下C盘的引导区和选择引导系统的系统文件,就可以快速恢复Win98与Win XP\2k的双重引导,找回原来的Windows XP\2k!具体步骤:
   1.启动进入win98(幸好还可以进),然后备份以前的正常boot.ini文件(这个文件不会因为重写MBR而改动,这里不备份也可以,只是后面需要手工修改~建议备份),插入windows 2000的安装盘,进行安装~“检测不到当前操作系统…………”我晕~ D版就是那个%$^&^%$,哎~怎么办呢?恢复xp试试~
   2.找来windows xp安装盘,按照正常的安装过程,在安装第一步“安装选项”中选择“全新安装(高级)”
   3.输入安装密码,跳过“升级驱动器”(不选“升级为NTFS文件系统”)和“下载更新的安装程序文件”两步
   4.系统开始复制安装文件,等绿色的复制进度条到头后,出现“重新启动计算机”的红色进度条(见图2),此时,迅速按下“Esc”键,禁止重新启动。(转至6)如果没来急按也没关系,只是会麻烦一点点而已~。
   5.如果没有及时按下“Esc”键而导致系统重新启动,将会出现启动选择菜单,其中包括三个启动选项:
    超级好用常用Windows 98
    豪华界面娱乐Windows XP
    网络安全学习Windows 2K
    Microsoft Windows XP Professional安装程序  #这里是新增加的 #
   6.选择第一项进入win98,进入C盘即可看到,根目录上已经出现了实现双引导启动需要的五个文件:“Ntldr”、“Ntdetect.com”、“Boot.ini”、“Bootfont.bin”、“Bootsect.dos”,此外还有Windows XP的三个安装临时文件“$ldr$”、“$drvltr$.~_~”、“txtse-tup.sif”和一个文件夹“$win_nt$.~bt”,其他分区也各有一个磁盘加速文件“$DRVLTR$.~_~”,直接删除即可。
   7.用备份的boot.ini文件覆盖Win98 系统目录下的boot.ini文件~ 。
   8.重新启动就恢复多重引导了,win98,xp,2k都可以进入了,并且,全部设置百分之百保持原来的状态,与之前没有丝毫改变。
   至此,多重系统引导恢复如初了~当然这只是一种方法而已。好累哦~

  下面补充一下boot.ini文件,用一般的文本编辑器打开Boot.ini,我们发现它很像DOS下多种引导的Config.sys文件格式:
[boot loader]
timeout=30
default=C:\
[operating systems]
C:\="超级好用常用Windows 98"  (#默认的操作系统安装在第1个硬盘第1个分区的/WINDOWS目录下#)
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="豪华界面娱乐Windows XP" /fastdetect
multi(0)disk(0)rdisk(0)partition(3)\WINNT="网络安全学习Windows 2k"
/nodetect

1.其中[Boot Loader]部分很容易理解,timeout指出了多引导时等待的时间,Default指出了下列的系统中缺省的引导系统,我的是默认进入装在c驱动器上的win98。
2.OS系统引导信息,NT术语称为“ARC路径”(Advanced RISC Computing规范路径)。通常ARC路径由两种表述方式:multi(x)disk(y)rdisk(z)partition(w)\rootdirectory 和scsi(x)disk(y)rdisk(z)partition(z)partition(w)\rootdirectory;由于时间关系,大家自己有兴趣就去找找这方面的资料看啦~ 只是/fastdetect,/nodetect,/alldetect是自检的设置~看E文应该都知道意思吧!
   其实要改动这个信息,你也可以:我的电脑”→属性,在系统属性中选“高级”标签,在“启动和故障恢复”区域里点击“设置”按钮,从而进入“启动和故障恢复”对话框。首先在“默认操作系统”列表框里选中你常用的操作系统;然后在“显示操作系统列表的时间”里修改时间,如改为4~5秒,你以后就不必为进入你的默认操作系统而等待或按回车键了,而且要进行选择也还来得及。如果你另一个操作系统很少使用,你还可把时间改为1秒甚至为0,这样你启动电脑后就看不到启动菜单了。如果时间改为1秒,还是可以进行选择的,在电脑启动后硬件检测信息即将消失时,不停地按“↓”光标键直到出现启动菜单。
    最后,如果你由于某些原因要重装Win 98(低版本系统),在重装前,先将C盘根目录下boot.ini、 bootfont.bin、bootsect.dos、io.sys、msdos.sys、ntdetect.com、ntldr七个文件备份,然后再重装,安装完后进入任一个操作系统,将备份的七个文件复制回C盘根目录,重新启动计算机,启动菜单就会重新出现。万一不行的话,就利用Win XP的“紧急修复磁盘”和安装盘进行修复吧。

    好了,终于把这个过程总结完了,我写的目的只是希望大家能够把使用计算机的一些经验与经历写出来大家一起分享,共同进步~当然其中错误肯定难免,希望大家一定指正~。 

-----------------------------------------------------------------                 让我们一起给Internet带上安全套~~

地主 发表时间: 12/02 19:15

回复: fqjpower [fqjpower]   论坛用户   登录
谢谢!网络需要你!

B1层 发表时间: 12/05 13:10

回复: bigfool [bigfool]   论坛用户   登录
我的机子和你第一个例子一样,但是我从别的ME机里找不到你所说的那个文件啊---kernel32.dll,是不是有的机子没有的?能不能给我发一个过来?
bigfool1029@yahoo.com.cn谢谢

B2层 发表时间: 12/10 10:22

论坛: 病毒专区

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号