分享
 
 
 

巧用NT Loader实现多操作系统启动

王朝other·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

巧用NT Loader实现多操作系统启动 (装载)

工作原理

我们知道,磁盘的引导扇区的内容决定了系统启动的方式,但是在多系统引导的情况下

,引导扇区的内容又取决于各系统安装的顺序。如果首先安装的是DOS,那么引导扇区就是D

OS引导扇区,它运行时将载入IO.SYS,完成正常的DOS启动工作。如果在DOS上又安装了Wind

ows NT,那么原先的DOS引导扇区将被NT的引导扇区覆盖,但是为了实现与DOS的双引导,NT

并未将其内容删除,而是保存在一个名为BOOTSECT.DOS的文件中。NT引导扇区运行时不再装

入IO.SYS,而是装入NTLDR,后者将显示一个启动菜单,提示您是启动NT还是启动DOS。如果

选择了启动DOS,那么NTLDR将运行文件BOOTSECT.DOS,也就是保存的DOS引导扇区,执行正常

的DOS启动工作。如果此后又安装了Windows 95,那么它在保持NT的启动扇区不变的情况下,

用自己的引导扇区重写文件BOOTSECT.DOS,同时安装自己的IO.SYS和MSDOS.SYS,而把DOS的

IO.SYS和MSDOS.SYS更名为IO.DOS和MSDOS.DOS。此时启动菜单中的相应项也由“MS-DOS”变

成了“Microsoft Windows”,如果选择它,NTLDR同样执行BOOTSECT.DOS,但是此时这个文

件的内容已不是DOS的引导扇区,而是Win 95的引导扇区,它将直接启动Win 95而不是DOS。

从上面可以看出,NT与DOS以及Win 95的双引导实际上是由NTLDR根据用户的不同选择执

行不同的引导扇区文件来完成的。因此,我们只要找到所有要启动操作系统的引导扇区文件

即可完成多操作系统的启动。不过,还有一个小问题需要考虑,就是IO.SYS和MSDOS.SYS的更

名问题。我们知道,MS-DOS和Windows 95都使用文件IO.SYS和MSDOS.SYS,为了防止冲突,

启动DOS时,Win 95的IO.SYS和MSDOS.SYS将分别更名为WINBOOT.SYS和MSDOS.W40,启动Win

95时,DOS的IO.SYS和MSDOS.SYS将更名为IO.DOS和MSDOS.DOS。在DOS和Win 95双引导系统中

,这些工作都是由Win 95的IO.SYS来完成的。因此,在用NTLDR来实现多操作系统启动时必须

提供一种方法来完成这种更名工作,否则将不能正常启动DOS或者Win 95。幸好,NTLDR实现

时考虑了这个问题,专门设置了两个开关参数:/Win 95和/Win 95DOS。

具体步骤

首先,必须做好安装前的准备工作,包括:备份硬盘上的数据(非常重要);制作NT安

装磁盘(插入NT的CD-ROM,在i386目录下执行WINNT32/OX);如果需要安装Linux,那么制

作Linux的Boot盘和Root盘。

其次,也是最关键的一步,就是获得不同操作系统的引导扇区文件。NT就不必说了,既

然是围绕NT来实现多系统引导,系统的引导扇区就是NT的引导扇区。下面笔者主要讨论一下

如何获得DOS、Win 95和Linux的引导扇区文件。

1. DOS

首先安装DOS,然后安装NT,此时C盘根目录下的BOOTSECT.DOS文件就是DOS的引导扇区文

件。

2. Win 95

在上一步的基础上安装Win 95。安装之前首先备份刚获得的DOS引导扇区文件,安装成功

之后,C盘根目录下的BOOTSECT.DOS文件就是Win 95的引导扇区文件,将其保存为BOOTSECT.

W40,并将备份的DOS引导扇区文件重命名为BOOTSECT.DOS。

3. Linux

安装Linux,然后在Linux系统下运行以下命令:

dd if=/dev/hda? of=/mnt/c-drive/bootsect.lnxbs=512 count=1

其中/dev/hda?是Linux的引导分区,/mnt/c-drive是C盘在Linux中的mount点。然后更

改/etc/lilo.conf文件,增加一行:

boot=/mnt/c-drive/bootsect.lnx

让LILO将Linux的引导扇区写到文件bootsect.lnx中。

由于Linux安装时重写了C盘的引导扇区,NT将不能正常启动,所以必须对其进行修复。

具体步骤为:首先用DOS启动盘引导系统,然后运行下列命令:

fdisk /mbr删除主引导记录,最后再用NT安装盘修复NT以恢复NT的主引导扇区(关于如

何修复NT,有兴趣的读者可以参见有关文章)。

至此,我们获得了所有要启动操作系统的引导扇区文件,而且正确修复了NT的引导扇区

,下一步就是修改NT的BOOT.INI文件,最终实现多操作系统引导了。

修改之前的BOOT.INI大致如下所示:

[boot loader]

timeout=30

default=multi(0)disk(0)rdisk(1)partition(1)\WINNT

[operating systems]

multi(0)disk(0)rdisk(1)partition(1)\WINNT=″Windows NT

Workstation Version 4.00″

multi(0)disk(0)rdisk(1)partition(1)\WINNT=″Windows NT

Workstation Version 4.00 [VGA mode]″ /basevideo /sos

C:\=″Microsoft Windows″

修改之后它将变为:

(相同部分略)

C:\bootsect.w40=″Windows 95″ /WIN95

C:\bootsetc.dos=″MS-DOS″ /WIN95DOS

C:\bootsect.lnx=″Linux″

其中/WIN95和/WIN95DOS的作用我们前面已经进行了讨论。

最终结果

在完成了所有操作之后重启系统,NT Loader将显示以下启动菜单供您选择:

″Windows NT Workstation Version 4.00″

″Windows NT Workstation Version 4.00 [VGA mode]″

″Windows 95″

″MS-DOS″

″Linux″

根据选择的不同,系统启动不同的操作系统,从而实现了多操作系统的启动。

总 结

以上方法是笔者实践经验的总结,已在多台PC机上实现,但是鉴于实际中的情况复杂多

变、各个操作系统版本众多,因此众多玩家在试验时还是要小心为妙,多作备份。

(塞外风情站 bbs.imu.edu.cn)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有