none
修改Boot.ini文件,轻松设置启动菜单 RRS feed

  • 常规讨论

  • Windows使用 Boot.ini 文件来确定在启动(引导)过程中要显示哪些操作系统选项。默认情况下,Boot.ini 标记为只读系统文件,并且通常情况下不需要任何手动修改。

    如果您需要更改此文件的内容,请使用“控制面板”中的“系统”工具: 1. 单击开始按钮,单击控制面板,然后双击系统。 2. 单击高级选项卡,然后单击“启动和故障恢复”下的设置。

    通常,Boot.ini 文件包含以下数据:

    [boot loader]
    timeout=30
    default=scsi(0)disk(0)rdisk(0)partition(1)\winnt
    [operating systems]
    scsi(0)disk(0)rdisk(0)partition(1)\winnt = "Windows NT" /NODEBUG C:\ = "Previous Operating System on C:\"

    下面的列表描述了 Boot.ini 文件中数据的含义:
     ? “timeout”指定在选择默认的操作系统之前 Windows 等待的时间

    ? “default”指定默认的操作系统。

    ? “scsi(0)”表示主控制器(通常也是唯一的控制器)负责此设备。如果有两个 SCSI 控制器并且磁盘与第二个控制器相关联,则第二个控制器称为“scsi(1)”。
    如果系统使用 IDE、增强的 IDE (EIDE) 或增强的小型设备接口 (ESDI) 驱动器,或者如果系统使用没有内置 BIOS 的 SCSI 适配器,请将“scsi”替换为“multi”。

    ? “disk(0)”指要使用的 SCSI 逻辑单元 (LUN)。它可以是独立的磁盘,但是大多数 SCSI 设置对每个 SCSI ID 只有一个 LUN。

    ? “rdisk(0)”指物理磁盘 1

    ? 本例中的“partition(1)”是计算机中第一个驱动器上的唯一分区。如果有两个分区(C 和 D),则分区 C 为 partition(1),分区 D 为 partition(2)。

    ? 包含多重引导方式的参数(如果有的话)要求检查 Winnt 文件夹以从指定的 SCSI 控制器的磁盘和分区进行引导。

    ? “/NODEBUG”指定没有监视任何调试信息。调试信息仅对程序开发人员有用。

    ? 您可以添加 /SOS 选项以在加载驱动程序时显示驱动程序名。默认情况下,OS Loader 屏幕仅显示进度点。

    ? “Previous Operating System on C:\”表示“上一个操作系统”是 MS-DOS,因为“C:\”是 MS-DOS 路径。




    通过修改Boot.ini文件,我们可以设置启动菜单中的以下内容:

    1.自定义延迟时间

    延迟时间是系统启动引导菜单后在设定的延迟时间内用户没有进行任何操作时,进入默认的操作系统。系统默认的延迟时间为30秒。如果感觉默认的延迟时间过 长,可以输入自己需要的延时时间,如10秒。设置时,首先打开Boot.ini文件(注意要去掉该文件的隐藏、只读属性),随后在[boot loader]字段下找到“timeout=”语句,将其中的30,改为10即可。我们还可以在“系统配置实用程序”中对其进行修改。在“开始/运行”中 键入“Msconfig”命令,在弹出的“系统配置实用程序”中单击“Boot.ini”标签,在“Boot.ini”界面中的“超时XX秒” 项中输入需要的延时时间即可。

    2.自定义显示内容

    在多系统启动时,有一个操作系统选择列表,这些列表显示的是电脑中所有操作系统的名称,如:Microsoft Windows XP Professional。我们可以对这些显示内容进行修改,加载一些个性化的设置。打开“boot.ini”文件,找到[operating systems]字段,该字段是显示当前操作系统列表,其格式为multi(0)disk(0)rdisk(0)partition(3)\ WINDOWS="Microsoft Windows XP Professional" /fastdetect。后面引号中的部分就是系统启动时显示的内容,只要将引号中的这些内容更改为自己需要的文字即可。

    3.定义默认启动系统

    安装了多系统后,Boot.ini会将其中一个系统设置为默认启动系统,如Windows XP,在超过延迟时间后将自动引导默认的系统启动。我们可以根据需要将默认的启动系统更改为其它的系统(如Windows 98)。更改时首先右键单击“我的电脑”,选择“属性”,在系统属性对话框中单击“高级”选项,随后在下面的“启动和故障恢复”项中选择“设置”按钮,弹 出一个“启动和故障恢复”对话框。单击“系统启动”项中的默认操作系统下拉菜单,选择一个需要的系统,单击“确定”即可。

    4.加载启动参数,更改启动画面

    Boot.ini在引导多系统启动时提供了很多的参数命令,这些启动参数可以得到不同的启动效果。Boot.ini在默认的情况下加载的是 /fastdetect参数,表示启动时不检查串行口和并行口。其实我们可以更改为其它参数,更改时首先在“Boot.ini”中选择需要更改的系统列 表,随后将该系统中的参数/fastdetect改为相应的参数值即可。以后再启动该系统就会加载一些设置信息或画面。我们以可以在“系统配置实用程序” 中对一些参数进行设置,切换到“Boot.ini”选项,先选中需要更改的系统,随后在“启动选项”下端勾选需要的启动参数即可。在此对几个常用参数加以 说明。

    /SAFEBOOT:安全启动,只启动HKLM\System\CurrentControlSetControl\SafeBoot中的驱动程序和服 务,其后可跟三个参数Minimal、Network或Dsrepair。Minimal和Network允许在网络连接下启动系统。而Dsrepair 要求系统从备份设备中调入活动目录的设置。还有一个选项是Minimal(AlternateShell),它让系统调入由HKLM\System\ CurrentControlSetSafeBoot\AlternateShell指定的SHELL程序,而不使用默认的Explorer。

    /NOGUIBOOT:不加载VGA驱动程序,也就不会显示启动过程和失败时的蓝屏信息。

    /BOOTLOG:将日志写入Nnbtlog.txt文件。

    /BASEVIDEO:使用标准VGA方式启动,这种方式主要用于显示驱动程序失效时。

    /SOS:在调入驱动程序名时显示它的名称,因驱动问题而无法启动时使用比较好。

    通过以上设置我们就可以轻松设置启动菜单了

    如何打开boot.int文件

      boot.ini有两种打开方式,第一种是选择工具——文件假及选项——查看——将隐藏系统保护文件的勾给勾掉,然后进入c盘根目录下,这时候就会有个隐藏文件出现,名字就叫boot.ini。

      第二种打开方式是,对我的电脑点右键——选择属性——打开高级选项页——点启动和故障恢复后面的设置,再点编辑,这时候打开一个记事本文件,它就是boot.ini文件。

    boot.ini文件是什么?

    ================================

      在电脑中安装了NT核心操作系统(如Windows 2000 和Windows XP)之后,每次启动计算机时都会出现一个系统引导菜单, 在此选择需要进入的系统后回车即可。这个多重引导的配置文件名为Boot.ini,配置它,我们可以轻松对电脑中的多系统进行引导,还可以通过该引导文件,设置个性化的启动菜单。

      Boot.ini在引导多系统启动时提供了很多的参数命令,配置这些启动参数可以得到不同的启动效果。在默认的情况下,Boot.ini通常加载的是/fastdetect 参数,它表示启动时不检查串行口和并行口。其实我们可以更改为其他参数,更改时首先在“Boot.ini”中选择需要更改的系统列表, 随后将该系统中的参数/fastdetect 改为相应的参数值即可。以后再启动该系统就会加载一些设置信息或画面。

    ================================

      看了以上内容你是不是很糊涂?对于什么是系统引导菜单什么都不明白?还有什么/fastdetect参数什么的是不是看了就迷糊啊?!其实这些都很容易。

      首先解释什么是系统引导菜单。你见过双系统的启动画面了没有啊?什么?没有?!好吧,我找张图给你看看,相信你看了就会马上明白了。

    看明白了没有啊?如果你是单系统的话,因该是不会有这个画面出来的,但如果你是双系统的话,一般都会更改boot.ini文件,这样就可以选择进入哪个操作系统了,这就是系统引导菜单。换句话说,修改boot.ini文件,就能起到更改系统引导菜单。

    ================================

    [boot loader]

    timeout=30

    default=scsi(0)disk(0)rdisk(0)partition(1)winnt

    [operating systems]

    scsi(0)disk(0)rdisk(0)partition(1)winnt = "Windows NT" /NODEBUG C: = "Previous Operating System on C:"

    ================================

    1、[boot loader]:英文意思是启动引导的意思

      ”timeout=30“

    看到上面那个图片下面有一行剩余秒数4秒了吗?那个就是timeout,timeout=30意思就是在这个画面上停止等待30秒,30秒之后,你没有任何操作,他就自动引导操作系统。换句话说 timeout就是选择默认操作系统前windows等待时间。

     “default”就是默认的意思

      “scsi(0)”表示主控制器(通常也是唯一的控制器)负责此设备。如果有两个 SCSI 控制器并且磁盘与第二个控制器相关联,则第二个控制器称为“scsi(1)”。

          如果系统使用 IDE、增强的 IDE (EIDE) 或增强的小型设备接口 (ESDI) 驱动器,或者如果系统       使用没有内置 BIOS 的 SCSI 适配器,请将“scsi”替换为“multi”。

      “disk(0)”指要使用的 SCSI 逻辑单元 (LUN)。它可以是独立的磁盘,但是大多数 SCSI 设置对每个 SCSI ID 只有一个 LUN。

      “rdisk(0)”指物理磁盘 1

      “partition(1)”是计算机中第一个驱动器上的唯一分区。如果有两个分区(C 和 D),则分区 C 为 partition(1),分区 D 为 partition(2)。

      “/NODEBUG”指定没有监视任何调试信息。调试信息仅对程序开发人员有用。

      “Previous Operating System on C:”表示“上一个操作系统”是 MS-DOS,因为“C:”是 MS-DOS 路径

    =====================================

    不知道你看懂了没有?反正我看了之后已经明白了很多了。如果还不明白,我还是按我的风格,举例子解释好了。

    下面的是上面那个图里的系统的boot.ini文件内容

    ============================

    [boot loader]

    timeout=30

    default=multi(0)disk(0)rdisk(0)partition(1)WINDOWS

    [operating systems]

    multi(0)disk(0)rdisk(0)partition(1)WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect

    c:="windows 98SE"

    ============================

    /fastdetect为一个参数

    而后面的windows 98SE就为系统引导菜单的第二项。如果你有兴趣,可以改改你的boot.ini文件,很有意思的哦。不过干这事要当心,否则系统启动不了可别怪我哈~

    那么我们现在再看看安装了矮人dos工具后,boot.ini被改成了什么样子

    [boot loader]

    timeout=6

    default=multi(0)disk(0)rdisk(0)partition(1)WINDOWS

    [operating systems]

    multi(0)disk(0)rdisk(0)partition(1)WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect

    C:grldr=我的DOS工具

    看明白了没有啊? 

    =======================================

    下面再看看一个在同一个分区下装2个系统的boot.ini文件内容

    先安装Windows 98,然后在Windows 98中安装Windows XP。要注意的是在安装时,选择全新安装。在安装选项对话框中单击“高级”选项,然后选择一个新的路径,如C:winxp, 而不要用默认的windows目录,否则就会把Windows 98的同名文件被覆盖,造成问题。跳过升级到NTFS这一步。经过一段等待,Windows XP安装完成了,重新启动,结果发现电脑自动进入Windows XP,双重启动菜单根本就没出现,打开C盘,点“工具→文件夹选项→查看→显示所有文件和文件夹”,发现实现双启动所需的文件都存在,看来问题并不严重,找到BOOT.INI,点右键,选“属性”,取消“只读”然后打开它,重新编辑一下:

       [boot loader]

      timeout=30

      default=C:

      [operating systems]

      C:="Microsoft Windows"

      multi(0)disk(0)rdisk(0)partition(1)WINXP="Microsoft Windows XP Professional" /fastdetect

    =============================================================

    顺便补充一下:
     BOOT.INI文件的常见格式如下:

      [boot loader]

      timeout=30

      default=multi(0)disk(0)rdisk(0)partition(1)WINDOWS

      [operating systems]

      multi(X)disk(Y)rdisk(Z)partition(Q)WINDOWS="Microsoft Windows XP Professional" /fastdetect

      SCSI(X)disk(Y)rdisk(Z)partition(Q)WIN98="Microsoft Windows 98" /fastdetect

      该文件分为Boot loader(引导加载)和Operating systems(操作系统)两大部分。在引导加载部分,timeout=xx表示等待用户选择操作系统的时间,默认是30秒,用户可以根据需要自行更改。default=xxxx表示缺省情况下系统默认要加载的操作系统路径,表现为启动时等待用户选择的高亮条部分。但是令很多用户困惑不解的是,那些“multi(0)disk(0)rdisk(0)partition(1)”是什么意思?

      实际上这是根据ARC规则命名的,它是x86或RISC计算机中用于标识设备的一种通用方法。ARC名字指向存放操作系统文件的分区,对于磁盘设备, ARC名字的构成如下:

      (X)disk(Y)rdisk(Z)partition(Q)

      component部分有两种有效值,即multi和SCSI,它用于标明硬件适配器。multi表示一个非SCSI硬盘或一个由SCSI BIOS访问的SCSI硬盘,而SCSI则表示一个SCSI BIOS禁止的SCSI硬盘。X值表示操作系统的系统根目录所在的分区所在的硬盘所在的磁盘控制器在同一磁盘控制器上的序号(X从0开始)。

      disk(Y):对于SCSI硬盘来说,Y值表示操作系统的系统根目录所在的分区所在的硬盘在同一个磁盘控制器上的硬盘序号(Y从0开始);对于multi来说,Y值无任何意义,恒为0。

      rdisk(Z):对于multi来说,Z值表示操作系统的系统根目录所在的分区所在的硬盘在同一个磁盘控制器上的硬盘序号(Z从0开始);对于SCSI硬盘来说,Z值无意义,恒为0。

      partition(Q):Q值表示操作系统的系统根目录所在的分区在同一硬盘上主分区的序号(Q从1开始)。

      Operating systems部分列出了这台电脑上所有操作系统的路径和清单,其中还包括一些如/fastdetect、/basevideo、/sos之类的开关符。这些开关符都有特殊的含义,一般情况下建议不要更改。

      OK,基于以上知识,我们对BOOT.INI文件应该有了一个比较清楚地认识。于是,我们就可以根据需要对其进行修改了。以笔者的电脑为例,BOOT.INI文件显示,硬盘中装有两个Windows XP专业版系统(实际上一个为中文版,一个为英文版),默认情况下是启动硬盘第三分区上的系统(英文版)。如果要它在默认情况下启动硬盘第一分区上的系统(中文版),而且为了以示区别,将两个Windows XP Professional分别对应的加以标记。这时,我们可以通过修改BOOT.INI文件来达到目的,修改之后如图2所示。重新启动计算机,看看你的愿望是不是实现了呢!

      由以上可知,BOOT.INI是一个非常重要的系统文件,没有它,系统将无法进行引导,所以我们平时除了要对其作必要的备份之外,还要编辑它的方法。特别是在安装多系统时,如果没有按照从低到高(Windows 98、Windows 2000、Windows XP、Windows 2003)的安装顺序,该文件往往会被损坏。如果我们掌握修改和编辑它的办法,就不会到时候无计可施了。


    Smile service,common progress!
    2009年2月8日 12:20

全部回复

  • 很不错!
    2009年2月8日 12:33
  • 恩 很好的教程。
    fantasy over with us 努力 WinExperience & PerformanceMVP 寻找志同道合的兄弟一路前行
    2009年2月8日 13:00
    版主
  • 感谢MJ的分享,很好的教程啊! 
    周雪峰
    2009年2月8日 14:16
    版主
  • 周雪峰 说:

    感谢MJ的分享,很好的教程啊! 


    周雪峰



    谢谢大家的支持,本人以后还会发表更多更实用的帖子!!!期待基础版的推出!!!
    Smile service,common progress!
    2009年2月8日 14:41
  • to mack  hi!
        我一直想找个家园普及下计算机基础。也期待下基础版吧。。话说mack的基础知识搜集的蛮全面的 哈哈。
    今天对部分新帖子的内容做了些说明。当然是给新手用的 嘿嘿。
                                                                                              尚彬

    fantasy over with us 努力 WinExperience & PerformanceMVP 寻找志同道合的兄弟一路前行
    2009年2月9日 2:58
    版主