趁五一假期,做一U盘启动,过程和遇到问题写一下。
引导扇的制作
曾经用过U盘启动工具制作软件,比如USBOOT,还有HP U盘格化工具。遇到过USBOOT制作的U盘启动不了,
还有HP U盘格式化工具,在无盘的机器上,检不到U盘分区。所以想到了手动处理一下。
BOOTICE,可以修复,改写主引导和分区引导记录。
使用NTLDR方式
先复习一下XP启动过程:
1、电源自检程序开始运行
2、主引导记录被装入内存,并且程序开始执行
3、活动分区的引导扇区被装入内存
4、NTLDR从引导扇区被装入并初始化
5、将处理器的实模式改为32位平滑内存模式
6、NTLDR开始运行适当的小文件系统驱动程序。
小文件系统驱动程序是建立在NTLDR内部的,它能读FAT或NTFS。
7、NTLDR读boot.ini文件
8、NTLDR装载所选操作系统
如果NT/XP被选择,NTLDR运行Ntdetect.com ,
对于其他的操作系统, NTLDR装载并运行Bootsect.dos然后向它传递控制。
windows NT过程结束。
9.Ntdetect.com 搜索计算机硬件并将列表传送给NTLDR,
以便将这些信息写进//HKE Y_LOCAL_MACHINE/HARDWARE中。
10.然后NTLDR装载Ntoskrnl.exe,Hal.dll和系统信息集合。
11.Ntldr搜索系统信息集合,并装载设备驱动配置以便设备在启动时开始工作
12.Ntldr把控制权交给Ntoskrnl.exe,这时,启动程序结束,装载阶段开始
需要的文件有:NTLDR boot.ini Ntdetect.com Bootsect.dos bootfont.bin(中文字库)
修改BOOTINI,加入一行 C:/GRLDR="Load Grub4Dos"
GRUB需要的文件:grldr menu.lst fonts(中文字库)
修改menu.lst 达到实现各种启动项。
BOOTSECT.DOS的制作
问题的产生:
正常进入DOS,是通过grub 调用DOS的IMG进入DOS环境的,如果想不通过grub进入DOS,需要Bootsect.dos 。
ntldr支持DOS引导,只要在boot.ini中加上
c:/="Start MS-DOS"
它就会在根目录下寻找BOOTSECT.DOS文件作为分区引导扇区加载,后面就可以进入DOS启动流程了。
DOS启动要求分区是FAT分区,NTFS分区不行;根目录下要有IO.SYS、MSDOS.SYS、COMMAND.COM文件可以。
看一下微软的描述
由 Windows NT 安装程序创建 Bootsect.dos。在驱动器 C 的扇区 0 中找到的引导扇区复制到 Bootsect.dos 之前安装程序将写入 Windows NT 启动扇区。(安装程序不会覆盖现有的 Bootsect.dos)。如果您选择以前的操作系统,Windows NT 执行 Bootsect.dos,模拟以前操作系统的正常引导过程。
因为在 Bootsect.dos 信息确实由以前的操作系统,它是很难重新创建。您必须 BIOS 参数块 (BPB) 从启动驱动器 (C) 的数据扇区 0 上传输到从以前的操作系统启动代码并将这写入 Bootsect.dos。要这样做按下列步骤操作:
1. 使用适当的实用程序来重新生成以前的操作系统的引导扇区。例如对于以前的操作系统是否 MS-DOS,从软盘启动 MS-DOS 并运行 SYS C:[NULL] 命令。
2. 从引导软盘 (这可能是 Windows NT 的磁盘集的 Windows NT CD-ROM 的启动磁盘的磁盘 1,或可能在使用 WINNT.EXE 一个安装过程中创建),启动 Windows NT 安装程序,并在第一个安装屏幕上,按 R 启动修复。
3. 按照说明安装程序。当安装程序为您提供的可选修复任务列表时,请确保您已启用"验证您的 C:驱动器上的引导文件"项。
4. 按照说明进行操作,直到您看到一条消息,指出"安装修复已完成。
现在,应将 Bootsect.dos 恢复到其原始状态。您应该能够启动以前的操作系统。
这是微软帮助和支持 (文章编号: 101789 - 最后修改: 2006年11月1日 - 修订: 2.1)的相关介绍
http://support.microsoft.com/kb/101789/zh-cn
正常的产生这个文件,需要以上的步骤。
使用 bootpart 可以制作 Bootsect.dos bootpart/? 显示帮助信息
命令行参数 :
分区标识 dos622或 win95或 winnt或 vista
文件名
加入boot.ini中的条目
例:bootsect win95 bootsect.dos 进入DOS
我这里使用的是win98所带的IO.sys msdos.sys command.com
趁五一假期,做一U盘启动,过程和遇到问题写一下。
引导扇的制作
曾经用过U盘启动工具制作软件,比如USBOOT,还有HP U盘格化工具。遇到过USBOOT制作的U盘启动不了,
还有HP U盘格式化工具,在无盘的机器上,检不到U盘分区。所以想到了手动处理一下。
BOOTICE,可以修复,改写主引导和分区引导记录。
使用NTLDR方式
先复习一下XP启动过程:
1、电源自检程序开始运行
2、主引导记录被装入内存,并且程序开始执行
3、活动分区的引导扇区被装入内存
4、NTLDR从引导扇区被装入并初始化
5、将处理器的实模式改为32位平滑内存模式
6、NTLDR开始运行适当的小文件系统驱动程序。
小文件系统驱动程序是建立在NTLDR内部的,它能读FAT或NTFS。
7、NTLDR读boot.ini文件
8、NTLDR装载所选操作系统
如果NT/XP被选择,NTLDR运行Ntdetect.com ,
对于其他的操作系统, NTLDR装载并运行Bootsect.dos然后向它传递控制。
windows NT过程结束。
9.Ntdetect.com 搜索计算机硬件并将列表传送给NTLDR,
以便将这些信息写进//HKE Y_LOCAL_MACHINE/HARDWARE中。
10.然后NTLDR装载Ntoskrnl.exe,Hal.dll和系统信息集合。
11.Ntldr搜索系统信息集合,并装载设备驱动配置以便设备在启动时开始工作
12.Ntldr把控制权交给Ntoskrnl.exe,这时,启动程序结束,装载阶段开始
需要的文件有:NTLDR boot.ini Ntdetect.com Bootsect.dos bootfont.bin(中文字库)
修改BOOTINI,加入一行 C:/GRLDR="Load Grub4Dos"
GRUB需要的文件:grldr menu.lst fonts(中文字库)
修改menu.lst 达到实现各种启动项。
BOOTSECT.DOS的制作
问题的产生:
正常进入DOS,是通过grub 调用DOS的IMG进入DOS环境的,如果想不通过grub进入DOS,需要Bootsect.dos 。
ntldr支持DOS引导,只要在boot.ini中加上
c:/="Start MS-DOS"
它就会在根目录下寻找BOOTSECT.DOS文件作为分区引导扇区加载,后面就可以进入DOS启动流程了。
DOS启动要求分区是FAT分区,NTFS分区不行;根目录下要有IO.SYS、MSDOS.SYS、COMMAND.COM文件可以。
看一下微软的描述
由 Windows NT 安装程序创建 Bootsect.dos。在驱动器 C 的扇区 0 中找到的引导扇区复制到 Bootsect.dos 之前安装程序将写入 Windows NT 启动扇区。(安装程序不会覆盖现有的 Bootsect.dos)。如果您选择以前的操作系统,Windows NT 执行 Bootsect.dos,模拟以前操作系统的正常引导过程。
因为在 Bootsect.dos 信息确实由以前的操作系统,它是很难重新创建。您必须 BIOS 参数块 (BPB) 从启动驱动器 (C) 的数据扇区 0 上传输到从以前的操作系统启动代码并将这写入 Bootsect.dos。要这样做按下列步骤操作:
1. 使用适当的实用程序来重新生成以前的操作系统的引导扇区。例如对于以前的操作系统是否 MS-DOS,从软盘启动 MS-DOS 并运行 SYS C:[NULL] 命令。
2. 从引导软盘 (这可能是 Windows NT 的磁盘集的 Windows NT CD-ROM 的启动磁盘的磁盘 1,或可能在使用 WINNT.EXE 一个安装过程中创建),启动 Windows NT 安装程序,并在第一个安装屏幕上,按 R 启动修复。
3. 按照说明安装程序。当安装程序为您提供的可选修复任务列表时,请确保您已启用"验证您的 C:驱动器上的引导文件"项。
4. 按照说明进行操作,直到您看到一条消息,指出"安装修复已完成。
现在,应将 Bootsect.dos 恢复到其原始状态。您应该能够启动以前的操作系统。
这是微软帮助和支持 (文章编号: 101789 - 最后修改: 2006年11月1日 - 修订: 2.1)的相关介绍
http://support.microsoft.com/kb/101789/zh-cn
正常的产生这个文件,需要以上的步骤。
使用 bootpart 可以制作 Bootsect.dos bootpart/? 显示帮助信息
命令行参数 :
分区标识 dos622或 win95或 winnt或 vista
文件名
加入boot.ini中的条目
例:bootsect win95 bootsect.dos 进入DOS
我这里使用的是win98所带的IO.sys msdos.sys command.com