timeout=30
default=multi(0)disk(0)rdisk(0)partition(4)/WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(4)/WINNT="Microsoft Windows 2000 Professional" /fastdetect
multi(0)disk(0)rdisk(0)partition(1)/WINNT="Windows NT Server Version 4.00"
multi(0)disk(0)rdisk(0)partition(1)/WINNT="Windows NT Server Version 4.00 [VGA mode]" /basevideo /sos
C:/="Microsoft Windows"
这个文件分为引导加载部分(boot loader)和操作系统部分(operating systems)两大块。在引导加载部分,timeout=xx表示等待用户选择操作系统的时间,默认是30秒;default=xxxxx表示缺省情况下系统默认要加载的操作系统路径,表现为启动时等待用户选择的高亮条部分。在操作系统部分,则列出了所有的操作系统路径和清单,以供用户选择。至此,我们已对该文件的大体框架有了初步的了解。但“multi/scsi(x)disk(x)rdisk(x)partition(x)”代表的又是什么呢?这就需要我们来理解ARC(高级RISC计算机)命名,它是x86或RISC计算机中用于标识设备的动态方法。
ARC命名的第一部分用于标识硬件适配卡/磁盘控制器,它有两个选项:SCSI和Multi。Multi表示一个非SCSI硬盘或一个由SCSI BIOS访问的SCSI硬盘,而SCSI则表示一个SCSI BIOS禁止的SCSI硬盘;(x)是硬件适配卡序号;disk(x)表示SCSI总线号,即如果硬件适配卡为Multi,其正确表示方法就为disk(0);rdisk(x)表示硬盘的序号,即如果硬件适配卡为SCSI则忽略此值;partition(x)表示硬盘的分区序号。这样,它就可以用图1、图2形象地表示出来。于是,我们便可以看懂Boot.ini中各种设置的具体含义了。
另外,我们还发现诸如/basevideo、/sos、/fastdect的选项,这些都是开关符。/basevideo开关可使显卡以640×480的分辨率显示驱动程序,这可保证在驱动程序不匹配的情况下,系统仍可以VGA分辨率引导;/sos开关表示Win NT在引导期间装载的驱动程序名。类似这样的开关还有一些,如/debug、/crashdebug、/nodebug等等,在这里就不赘述了,有兴趣的朋友可以找一些相关的书来看看。了解了这些之后,如果自己格式化某些分区、重新安装某一个或某两个操作系统,这就可能会派上用场。例如要格式化C盘、D盘,C盘上安装了NT Server 4.0且为主活动分区,D盘安装的是Win 98操作系统,E盘为应用程序分区,F盘安装的是Win 2000。C、D、E盘均为FAT文件系统,F盘为NTFS文件系统。由于格式化了C盘,其根目录下的Boot.ini丢失,因而有关Win 2000启动的信息也随之丢失。如果我们为此而重装系统,那似乎是令人心烦的和难以忍受的。了解了Boot.ini文件,我们就可以在C盘根目录下找到它,去掉其只读的属性,然后对其进行编辑。在[operating systems]下加上如下信息:“multi(x)disk(x)rdisk(x)partition(x)/WINNT="Microsoft Windows 2000 Professional" /fastdetect”,具体内容应根据个人电脑硬件的不同配置情况而定,如我的电脑的此项配置为“multi(0)disk(0)rdisk(0)partition(5)/WINNT5="Microsoft Windows 2000 Professional" /fastdetect”,即表明装载Win 2000的目录为G:/WINNT5。这样当开机时我们选择此项,系统就会在这个目录查找所需信息,进行程序加载,从而完成启动Win 2000的任务。当然,我们直接编辑修改这个文件并不能像重新安装那样完美,因为全新安装时安装程序修改的不止是这一个文件,所以这种做法可以算是一种快捷方式吧。如果我们懒得重新安装,这种方法值得一试。