多系统引导程序示例
- 格式:doc
- 大小:8.69 MB
- 文档页数:61
硬盘安装NT6系统教程目录必要的说明 (1)系统引导过程 (1)XP系统安装WIN7、WIN8单系统 (2)XP系统单分区安装WIN7、WIN8单系统 (16)XP系统下安装XP+WIN7、WIN8双系统 (22)WIN7系统下全新安装单、双系统 (25)WIN8系统下全新安装单、双系统 (30)单硬盘克隆安装WIN7、WIN8双系统 (42)双硬盘克隆安装WIN7、WIN8双系统 (49)WIN8系统使用DISM命令安装双系统 (64)WIN7系统使用IMAGEX命令安装双系统 (67)32位WIN7系统下安装XP (69)必要的说明2000、xp、2003属于nt5系列系统Vista、win7、win8属于nt6系列系统MBR:全称Master Boot Record,主引导记录PBR:全称Partition Boot Record,分区引导记录Bootmgr:启动管理器文件BCD:全称Boot Configuration Data,也就是“启动配置数据”。
简单地说,win7、win8下的BCD文件就相当于xp下的boot.ini文件主引导记录和分区引导记录中的引导代码可以使用微软的bootsect.exe命令更改安装前提是电脑现有系统可以正常启动。
系统iso镜像文件已经下载并准备好。
系统内有解压缩软件比如WinRAR、7-Zip、UltraISO或者虚拟光驱软件也可以。
Ghost32软件建议使用11.5版,可以热备份。
C盘的分区容量足够安装新系统。
教程是以在传统BIOS主机MBR分区结构的磁盘中安装简体中文系统为例讲解系统引导过程电脑的启动过程就象一个接力赛跑,一棒传一棒。
系统默认的引导过程如下图所示,BIOS加载MBR中的代码,MBR再找到激活主分区的PBR代码,不同PBR代码再往后找相应文件加载……MBR中的引导代码是nt5或者nt6其实没有什么大关系,关键在PBR,PBR中的代码如果是nt5的就加载ntldr 文件,如果是nt6的就加载bootmgr文件,然后继续后面的加载过程。
grub2 的cfg写法-回复Grub2的CFG写法Grub2是一个广泛被使用的引导加载程序,它被用来在计算机启动时选择操作系统或内核。
Grub2的配置文件(通常被称为grub.cfg)是一个重要的组成部分,它决定了引导后面的操作系统或内核。
本文将为您详细介绍Grub2的CFG写法,通过一步一步的解释,帮助读者理解和创建一个有效的grub.cfg文件。
第一步:了解grub.cfg的结构在我们开始编写grub.cfg之前,我们需要了解其基本结构。
grub.cfg是一个文本文件,其中包含一系列的菜单条目。
每个菜单条目对应于一个操作系统或内核,包括该操作系统的启动选项。
每个菜单条目的基本结构如下:menuentry '菜单标题' {操作系统启动选项}'菜单标题'是我们为特定操作系统或内核定义的名称,可以根据需求更改。
而“操作系统启动选项”则包括指导Grub2引导该操作系统所需的命令。
第二步:创建一个基本的菜单条目让我们创建一个基本的菜单条目,以便了解如何编写grub.cfg。
menuentry 'Ubuntu' {search file no-floppy set=root /vmlinuzlinux /vmlinuz root=/dev/sda1initrd /initrd.img}在这个例子中,我们为操作系统Ubuntu创建了一个菜单条目。
首先,我们使用search命令来查找指定的内核文件(/vmlinuz),set=root将其设置为根文件系统。
然后,我们使用linux命令指定内核的位置(/vmlinuz),并通过root=/dev/sda1参数将根文件系统设为/dev/sda1。
最后,我们使用initrd命令指定初始内存映像文件(/initrd.img)。
第三步:添加更多的菜单条目和选项现在我们已经创建了一个基本的菜单条目,让我们继续添加更多的菜单条目和选项。
bootm命令参数(原创实用版)目录1.概述 bootm 命令2.bootm 命令的参数3.参数的使用方法和示例4.常见问题和解决方法正文bootm 命令是 Linux 系统中用于引导内存棒的命令,它可以将内存棒中的 Linux 内核和初始化程序加载到内存中,并启动 Linux 系统。
在使用 bootm 命令时,需要了解其参数的使用方法,以便正确地引导内存棒。
1.概述 bootm 命令bootm 命令是 Linux 系统中的一个实用程序,主要用于引导内存棒。
它可以将内存棒中的 Linux 内核和初始化程序加载到内存中,并启动Linux 系统。
bootm 命令通常用于嵌入式系统或实时操作系统,这些系统通常使用内存棒作为引导设备。
2.bootm 命令的参数bootm 命令有多个参数,这些参数用于指定内存棒的类型、设备文件、内核和初始化程序等。
以下是 bootm 命令的一些常用参数:- -d:指定内存棒的设备文件。
- -f:指定内存棒中的文件系统类型。
- -k:指定内核的压缩方式。
- -l:指定内核的启动选项。
- -m:指定内存棒的类型。
- -s:指定内核的引导参数。
- -v:显示详细的输出信息。
3.参数的使用方法和示例以下是使用 bootm 命令的一些示例:- 引导一个名为"my_kernel"的内核,并使用"my_root_fs"作为文件系统:```bootm -d /dev/mmcblk0p2 -f ext3 -k gzip -l my_kernel -m 128M -s my_root_fs```- 引导一个名为"my_kernel"的内核,并使用"my_root_fs"作为文件系统,同时显示详细的输出信息:```bootm -d /dev/mmcblk0p2 -f ext3 -k gzip -l my_kernel -m 128M -s my_root_fs -v```4.常见问题和解决方法在使用 bootm 命令时,可能会遇到一些问题,例如内存棒无法识别、内核无法引导等。
关于BCDEdit命令的使⽤1, BCD 介绍在Win7中与之前的版本的引导系统不同,微软引⼊了⼀种全新的boot loader架构, Windows Boot Manager (Bootmgr.exe)。
与之前通过Ntldr来初始化硬件设备、建⽴内存空间的映射图等,将系统的软硬件环境设置成⼀个合适的状态,为最终调⽤操作系统内核准备好正确的环境相⽐。
Win7中的新架构可以实现完整的硬件独⽴性,且能够与多种操作系统⽆缝结合,让Win7的启动/引导过程更加快速与安全。
同时,将之前Windows系统中由Boot.ini管理的内容移交给新的Boot Configuration Data (BCD : 启动设置数据),当然,也提供了新的启动选项编辑⼯具,BCDEdit (BCDEdit.exe),来管理启动设置。
BCDEdit:Win7启动设置编辑⼯具 如果是新安装Win7操作系统,你将会发现在的⽂件夹中Boot.ini⽂件已经彻底消失;如果系统中安装了之前的操作系统版本,虽然仍可找到Boot.ini⽂件,但是这个⽂件只作⽤于⽼版本的操作系统,并不对Win7造成任何影响。
在基于EFI (Extensible Firmware Interface : 可扩展固件接⼝,以后采⽤这种接⼝的PC会越来越多 )的计算机中,Boot.ini ⽂件则更不复存在,在基于EFI的系统中,启动选项被贮存在主板的存储器中。
此时要修改启动选项,就需要使⽤BCDEdit,甚⾄在修改Boot.ini 的⽅式也不能使⽤原先的⽂本编辑器。
另外⼀⽅⾯,微软在Win7中提供了可通过WMI (Windows Management Instrumentation : Windows管理规范)调⽤的BCD类,通过它可以⽤编程的⽅式修改BCD数据。
BCDEdit的启动 BCDEdit不是⼀个运⾏于图形界⾯程序,⽽是⼀个命令⾏⼯具,运⾏⽂件Bcdedit.exe位于“\Windows\System32”⽬录下。
计算机及Linux操作系统开机启动过程详解从按下开机键开始的计算机启动过程:(主要包括从主板加载BIOS并执⾏、从磁盘加载启动区并执⾏、从磁盘加载操作系统并执⾏三步,是依次递进的,详情参阅)加载BIOS:按下开机键,主板ROM的BIOS被(被谁?)加载到到内存0xffff0处,CPU 将 PC 寄存器的值强制初始化为 0xffff0(⼀跳)。
执⾏BIOS代码:阶段1(0xffff0 处的内容):该⼊⼝地址处存的是⼀个跳转指令,跳转的⽬的地是内存0xfe05b位置,该位置存了BIOS的真正内容。
执⾏该跳转(⼆跳)。
阶段2(0xfe05b 处的内容):执⾏硬件检测、硬件初始化、建⽴中断向量表等⼯作后,找到磁盘上的启动区(或称引导区)加载到内存0x7c00位置,并跳转到该位置(三跳)。
执⾏启动区代码(0x7c00 处的内容):从磁盘加载OS内核到内存,与上⾯不同这⾥内存位置不是固定的了,并跳转到OS内核代码处(四跳)。
执⾏OS内核代码:包括开启分段机制、进⼊保护模式、开启中断机制等,执⾏完后系统由OS接⼿管理。
具体过程见下⽂“操作系统启动过程”部分。
整体过程概要:补充:BIOS位于主板ROM,启动时被加载到内存;启动区、OS位于磁盘,被先后加载到内存。
BIOS、启动区在内存的位置是固定的(为啥是这三个值?早期定死的);⽽OS在内存位置不是固定的。
启动区:若⼀个磁盘上0盘0道1扇区的内容(512B)的末两个字节为0x55、0xaa,则这该扇区会被BIOS识别为启动区,该磁盘会被当做可启动盘。
往⼀个磁盘烧录OS后之所以可以当做启动盘就是因为往该位置写⼊了这些特殊数据。
若装了多系统,则启动时会列出并让⽤户选择要启动的系统,这些系统就是根据上述条件被识别得到。
可见,⼀个程序只要其虚拟内存以0x7c00作为段地址,且按上述条件烧录到磁盘,则就可以被BIOS识别为启动区加载到内存执⾏。
因此,如果该程序逻辑中不是去加载OS⽽是直接输出数据,则该程序⾃⾝就是⼀个简洁的"操作系统"。
1FreeBSD系统启动过程1)BIOS自检2)载入启动硬盘上的主引导区FreeBSD最常用的多操作系统引导程序是FreeBSD Boot ManagerBoot Manager引导界面示例如下:F1: FreeBSDF2: DosDefault F1用户选择了某个选项,或者过了一定的延迟时间后,Boot Manager 就启动FreeBSD系统注意:我们的服务器一般只安装了FreeBSD,所以一般只出现“Default F1”字样,直接回车即可。
3)引导程序载入FreeBSD基本分区的第一个扇区,这里放着FreeBSD的启动程序Boot Block4)Boot Block载入FreeBSD文件系统中的Boot Loader程序问:如何更改Boot Loader程序?答:在屏幕最先显示出一个简单的斜线“/”的时候,如果在几秒时间内按下空格键就会出现boot提示符,此时,可以输入以下命令:5)Boot Loader程序将内核/kernel和内核模块载入内存,然后把控制权交给FreeBSD内核程序问:如何进入单用户模式答:屏幕显示“Boot [kernel] in 10 seconds”,在这10秒间隔内用户如果按下除了回车之外的其他任意键,就会进入Boot Loader交互状态,然后,输入“boot -s”命令,就可以启动系统,并进入单用户模式(这个模式下可以执行系统维护任务,参见单用户模式)附:交互状态下,可以输入以下命令:6)内核检测机器的各个硬件(并显示在屏幕上)7)内核启动进程0和1●进程0:用于清除内存,将所有的内存单元置零●进程1:init进程,负责启动系统和各种守护进程。
将系统带入多用户状态,并按照/etc/rc启动脚本来启动服务程序。
/etc/rc(类似于windows系统里的AUTOEXEC.BA T)完成很多重要的工作,包括设置网络接口、检查磁盘错误等等。
/etc/rc文件也会执行另外的一系列rc文件,如rc.conf用于大部分系统参数的设置、work用于网络设置、rc.firewall用于设置防火墙、rc.local用于管理员对本机特定的启动设置,等等。
uboot下的fdt reserved-memory的定义-概述说明以及解释1.引言1.1 概述概述部分的内容可以如下所示:概述U-Boot是一种广泛应用于嵌入式系统的开源引导加载程序。
它提供了一个灵活且可扩展的平台,用于引导和管理各种嵌入式设备。
在U-Boot 中,FDT(Flattened Device Tree)是一种用于描述硬件设备的数据结构。
通过使用FDT,我们可以在引导过程中动态配置硬件资源,如内存、设备节点等。
本文旨在探讨在U-Boot中的FDT reserved-memory的定义。
FDT reserved-memory是一种用于保留特定内存区域的机制。
在启动过程中,U-Boot可以通过配置FDT reserved-memory来指定需要被保留的内存区域,以供系统中其他组件使用。
这种机制在嵌入式系统中非常实用,特别是当我们需要在运行时划分内存空间时。
通过合理配置FDT reserved-memory,可以避免内存冲突和资源浪费,提高系统性能与稳定性。
接下来的章节将依次介绍U-Boot的简介、FDT的简介以及U-Boot 中的FDT reserved-memory。
在最后,我们将详细阐述FDT reserved-memory的定义,以帮助读者更好地理解和应用这一重要的概念。
通过对U-Boot下的FDT reserved-memory的定义的深入探讨,我们可以更好地了解如何在嵌入式系统中合理地管理和配置内存资源,优化系统性能与稳定性。
同时,本文也为进一步研究和应用U-Boot和FDT提供了有益的参考。
1.2文章结构文章结构部分的内容可以按照以下方式编写:1.2 文章结构本文将按照以下结构进行讲解:1. 引言1.1 概述1.2 文章结构1.3 目的2. 正文2.1 U-Boot简介2.2 FDT(Flattened Device Tree)简介2.3 U-Boot中的FDT reserved-memory2.4 FDT reserved-memory的定义3. 结论3.1 总结3.2 展望在引言部分,我们将对本文的主题进行概述,并介绍文章的结构和目的。
uboot fdt 用法U-Boot是一个流行的开源引导程序,用于引导各种设备上的操作系统。
它提供了一组功能强大的命令行工具和接口,可用于配置和管理硬件。
其中一个重要的特性是它支持Flash上设备的初始化表(FDT)。
一、简介Flash上设备的初始化表(FDT)是一种数据结构,用于描述Flash设备上的存储器映射和初始化信息。
在U-Boot中,FDT被用来配置和访问各种设备,如串口、USB设备等。
使用FDT可以简化代码,并提供一种方便的方式来描述设备特性。
二、使用方法要使用FDT,首先需要创建一个FDT文件。
可以使用U-Boot的fdt工具来生成FDT文件。
该工具可以根据设备树模板和设备特性生成FDT文件。
以下是一个简单的示例:1.打开终端并启动U-Bootshell。
2.使用fdt工具生成FDT文件。
例如,要生成一个名为"mydevice.dtb"的FDT文件,可以使用以下命令:fdt生成mydevice.dtb>mydevice.fdt这将生成一个名为"mydevice.fdt"的文件,其中包含设备的初始化信息。
3.将生成的FDT文件复制到Flash设备上。
通常,该文件应与U-Boot引导加载程序一起发布,并在启动时由U-Boot加载。
4.在U-Bootshell中,可以使用fdt_load工具将FDT文件加载到内存中。
例如:fdt_loadfdtmydevice.fdt这将将"mydevice.fdt"文件加载到内存中,以便U-Boot可以使用它来访问设备。
5.现在可以使用U-Boot的设备树命令来访问和配置设备了。
例如,可以使用以下命令来设置串口波特率:setenvconsoleserial115200,n8这将设置串口波特率为115200bps,并启用N8模式。
三、注意事项在使用FDT时,请注意以下几点:1.FDT文件应该与U-Boot引导加载程序一起发布,并位于正确的位置。
Grub参数什么是Grub?Grub(GNU GRand Unified Bootloader)是一个开源的多操作系统引导加载程序。
它是Linux系统中最常用的引导加载程序之一,用于在计算机上启动操作系统。
Grub具有强大的功能和灵活性,可以轻松地管理多个操作系统的启动。
它允许用户选择要启动的操作系统,并提供了各种参数和选项来自定义引导过程。
Grub参数的作用Grub参数是在启动时传递给Grub引导加载程序的配置选项。
通过使用这些参数,用户可以更改引导过程中的各种设置,并影响操作系统的启动方式。
Grub参数可以用于以下目的:1.启动特定内核:通过指定内核映像文件和相应的initrd(initial RAMdisk)文件,可以选择要启动的特定内核版本。
2.修改默认操作系统:通过设置默认项,可以选择在引导时自动选择哪个操作系统启动。
3.设置超时时间:可以设置一个时间段,在该时间段内如果用户未进行任何操作,则自动选择默认操作系统进行启动。
4.修改命令行选项:可以传递额外的命令行选项给内核,以便对其行为进行更精细的控制。
5.加载额外模块:可以加载额外的模块来提供对特定硬件或文件系统的支持。
6.设置图形界面:可以选择使用文本模式还是图形模式进行引导。
常用的Grub参数以下是一些常用的Grub参数及其作用:1.root=:指定根文件系统所在的设备。
例如,root=/dev/sda1表示根文件系统位于第一个硬盘的第一个分区。
2.kernel=:指定内核映像文件的路径。
例如,kernel=/boot/vmlinuz-5.4.0-81-generic指定要启动的内核版本。
3.initrd=:指定initrd文件的路径。
initrd是一个临时文件系统,用于在内核启动之前加载必要的驱动程序和模块。
4.quiet:禁止显示启动过程中的冗长输出信息,使引导过程更加简洁。
5.splash:启用图形界面引导。
需要在Grub配置文件中设置后才能生效。
支持BIOS和uEFI启动的GRUB2引导盘利用GRUB2启动程序,合并网上优秀资源(感谢原作者)生成一个启动的U盘/光盘。
根目录只有引导所需要的EFI、BOOT二个目录无其它内容,简洁清爽。
各种引用的ISO资源使用原版而没有解包出来,方便管理以及后期维护使用。
现共享相关的内容出来供有需要的朋友参考。
1、包含MAXDOS工具包(仅BIOS引导可用),Windows密码清除/绕过工具;2、WinPE使用MEMDISK载入ISO镜像(仅BIOS引导时可用;uEFI引导因暂不支持ISO装载不能使用,如需要可以使用EFIShell方式加载);3、Parted_Magic、Linux Live CD使用linux/initrd方式载入。
添加LiveCD的一些光盘路径写法(findiso=$isofile、iso_filename=$isofile、iso-scan/filename=$isofile),核心的引用参数可以参考各linuvCD内的配置文件,然后在配置文件中加入ISO路径中引用即可。
4、UsbBoot.ima镜像只有基础的引导程序,大家可根据实际需要放置相关文件,如各种ISO文件WinPE、PartedMagic、Linux liveCD等(注意不支持本身通过MEMDISK加载的各型PE ISO,例如众多GHOST系统盘中带的一般就是此类),然后修改GRUB2相关配置菜单即可使用。
关于修改grub.cfg配置菜单,请使用文本编辑器(如:notepad++、UltraEdit)保存为无签名的UTF8编码,详情参考配置文件。
光盘目录:+--- /|+-- /EFI ——GRUB2 uEFI引导文件|+-- /BOOT/GRUB2 ——GRUB2 配置文件及相关模块|+-- /BOOT/GRUB2/grub.cfg ——GRUB2主配置文件|+-- /BOOT/GRUB2/os_list.cfg ——LiveCD及系统安装配置文件|+-- /BOOT/GRUB2/os_menu.cfg ——获取本地硬盘启动项配置文件|+-- /BOOT/GRUB2/pmagic.cfg ——PartedMagic配置文件|+-- /BOOT/GRUB2/pwd.cfg ——Windows登陆密码工具配置文件|+-- /BOOT/Tools ——一些实用小工具软件|+-- /BOOT/Tools/GrubLDR ——GRUB2引导文件备份|+-- /SoftWare/ISO ——各种ISO镜像文件,如:WinPE、PartedMagic、Linux liveCD等。
多系统引导程序XORLDR应用示例无忧论坛的Pauly大侠出品的多系统引导程序Xorldr,功能强大,可以使用多种启动方式,最多可管理8个启动项。
Pauly本人也写了一个用户手册,详细介绍Xorldr程序的功能及用法,但限于篇幅没有具体讲解启动实例。
本人在实际应用该程序的过程中积攒了一些心得经验,不敢独享,写下来供大家参考,以起到抛砖引玉的效果。
1.工具准备在进行安装XORLDR之前,我们需要准备好以下工具软件:●XORLDR多系统管理程序,Pauly大侠作品,目前最新版本是0.3.5● BOOTICE引导程序安装工具,亦为Pauly作品,最新版本是0.76● WinHex,强大的16进制文件编辑与磁盘编辑软件。
● grub4dos、syslinux最新版,以及其它可能用到的工具,如本文中使用的9IN1_PXE_SRS合盘,我们要多次利用其中的工具。
2.磁盘分区及结构介绍首先,我们使用Winhex来看一下磁盘上的分区及结构。
打开Winhex,按F9打开磁盘,如图1所示:(图1)选择物理磁盘HD0,点击OK后可观察到磁盘(hd0)的分区情况,如图2所示。
(图2)由图2可以看出我们这块磁盘的一些情况:容量为73.9G,分为四个分区,启始扇区(Start sectors)占用第0~62扇区;第一主分区占用第63~20996954扇区,10G空间;第二主分区占用第20996955~31503464扇区,共5G空间;第三主分区占用第31503465~94446134扇区,共30G空间;存在一个分区间隙占用第94446135~94446197扇区,共31.5KB空间;第四分区(逻辑分区)占用第94446198~154577429扇区,共28.7G空间;最后是一个分区剩余空间,占用第154577430~154587127扇区,共4.7MB空间。
实际分区根据自己的需要进行,不必局限于单主分区或者四主分区。
一个比较理想的情况是三主分区加扩展分区,再设置若干逻辑分区,这样对于现在海量容量的硬盘来讲是比较合适的。
3.XORLDR菜单编辑示例我们假定您已经做好了分区。
以我这台老机器上分区为例:四个分区,第一、二主分区各安装一个winXP,并实现系统之间相互隐藏;第三主分区放置游戏及其它私密数据;第四分区(逻辑分区)放置我的9IN1_PXE_SRS维护工具合盘及系统备份等。
根据实际需要,设计菜单项如图3所示。
(图3)下面依次介绍各菜单项编辑情况。
3.1第一主分区设计成“从文件启动我的XP”从该分区启动时可以显现所有分区。
XORLDR可以从PBR、文件及绝对扇区来启动系统。
对于XP系统来讲,从文件启动系统的一个好处是可以把PBR解放出来,用于一些其它的启动目的。
当然,这种选择不是绝对的,任何一种方式用好了,都是不错的。
首先,要安装好一个XP系统。
启动XP系统后,打开XORLDR程序,选择本机硬盘后点击“安装/配置”,如图4所示。
(图4)根据图5进行设置:(图5)注意选择“从文件启动”的启动方式后,后面要选择好文件类型及存放的分区。
这里,文件名“/NTLDR”实际上包含了路径,即为第一主分区根目录下的文件NTLDR;windows系统启动文件一律选择“NTLDR /SETUPLDR.BIN /BOOTMGR”这一文件类型。
其它文件类型在后面介绍。
特别说明:文件可以放在分区的根目录下,也可以放在子目录下,还可以放到剩余分区等不可见的地方;目录分隔符/ 等同于\,即/NTLDR 和\NTLDR 是一样的。
需要强调的是,文件名中不可出现盘符,如C:\NTLDR或C:NTLDR都是错误的,将不被XORLDR 识别。
盘符由“工作磁盘及分区号”替代。
此外,XORLDR 支持FAT16/FAT32/NTFS 三种文件系统,其中FAT分区上仅支持8.3 格式的短文件名;NTFS 分区上要求 $MFT 必须是连续的,否则可能搜索不到指定的文件,且文件不能是加密或压缩的。
接下来,根据需要设置分区显隐状态,见图6:(图6)设置完成后,一定要点击“生成”来使用菜单设置生效,如图5所示。
完成后点击“导出配置”做一备份,因为后面在第二主分区安装操作系统可能会写MBR而导致XORLDR引导被清除。
3.2第二主分区设计成“从文件启动常用XP”通常情况下默认启动到这个系统,并隐藏其中30G的第三主分区(游戏及私密数据)及“我的XP”所在的第一主分区。
安装多系统并使系统之间及任意分区相互隐藏,做到完全独立隔离,是XORLDR引导管理器的重大优点。
如果您不需要安装多系统,可以跳过此步看第三个步骤。
A.安装GHOST系统。
这个操作不局限于XP系统,其它GHOST系统操作相同,我选择第二系统仍是XP只是因为老机就能跑跑它,上不了win7。
在第一主分区下的“我的XP”中进行XORLDR第二项菜单的编辑,见图7:(图7)其中文件名及类型、安装的分区号均根据实际情况填写。
比如安装的是win7,则文件名为“/BOOTMGR”。
根据需要自定义分区显隐状态,如图8所示。
(图8)编辑完成后,点击“生成”使菜单生效,然后“导出设置”,最后“写入磁盘”。
做完上述工作后,在第一系统(我的XP)中使用ghost32程序将gho文件(GHOST安装系统文件或者备份系统生成的GHO文件,对同一台机器来讲,完全可以用第一系统的备份GHO文件还原到第二系统中)恢复到第二主分区中。
重启后选择第二菜单项即可进入第二系统(常用XP)。
这里,我们不用重启,接着做第三步工作。
B.全新安装XP或者其它Windows系统。
进入PE,将第二主分区设置为活动,然后进行全新安装系统(此步骤不详细介绍了,不会的网上查找资料或者咨询)。
完成后重启进入第二分区的“常用XP”(或其它windows系统)。
注意,此时不会有XORLDR启动菜单出现,因为全新安装系统时,Windwos很霸道地重写MBR了。
打开XORLDR程序,导入原先保存的配置,然后按照A中步骤进行XORLDR第二菜单项的编辑、生成,见图7。
之后继续进行其它菜单项的编辑。
3.3从第四分区引导扇区启动GRLDR首先利用BOOTICE对第四分区(逻辑分区)的PBR写入grub4dos引导,打开BOOTICE.EXE,点击“分区记录引导”(图9),(图9)选择“grub4dos”后进行“安装/配置”,如图10所示:(图10)当BOOTICE所在目录下存放有新版本的GRLDR.MBR时,会提示是否写入新版本的GRLDR,选择“是”,根据需要决定是否为GRLDR改名,我们这里不改名,直接确定后完成写入,完成后如图11所示。
(图11)然后在其根目录放置GRLDR内置菜单。
同样的,也可以对PBR写入其它引导程序,比如,若分区为FAT文件系统,则可以写入SYSLINUX引导。
最后,使用XORLDR编辑第三个菜单项,如图12所示:(图12)3.4 从绝对扇区启动BLLDR文件物理磁盘每512字节为一扇区,从0扇区开始直到最后一扇区,依次编号。
文件存放在磁盘上,必定有其起始与终止扇区(这里我们不讨论非连续存放的情况)。
从文件存放的安全角度来看,分区间隙及分区剩余空间是最为安全的,因为无须担心格式化会破坏掉数据。
但分区间隙往往太小,31.5KB的空间十分有限,所以,我们这里主要讲解一下如何把文件放置到分区剩余空间。
一块磁盘最多有四个主分区,或者三个主分区加一个扩展分区(含若干逻辑分区),这种情况下是无法再进行进一步分区的,也就不怕分区剩余空间被新建立分区而导致原来的数据丢失。
所以,可以有意识的预留出一定空间作为分区剩余空间。
从启动要求的数据空间来看,不需要太大,三五MB不嫌少,几十MB不嫌多(多了可以放置IMG文件嘛)。
以我这台老爷机为例。
如前所述,本机磁盘的分区剩余空间占用第154577430~154587127扇区,共4.7MB。
下面,我们示例如何把一个启动引导文件BLLDR(此文件即前面提到的9IN1_PXE_SRS合盘的引导文件,本质是GRLDR内置菜单)复制到这个空间的第154577430~154577915扇区中。
首先,我们使用Winhex打开BLLDR,按Ctrl+A选择所有数据(图13),(图13)再按Ctrl+C将所选的块数据进行复制(图14),(图14)最后从窗口选择前面打开的物理磁盘(hd0),点击“unparti t ionable space”(分区剩余空间),将鼠标放到该空间起始扇区的第一字节处,如图15所示。
(图15)显然,剩余空间还没有数据存在,可以放心地存放BLLDR文件。
按Ctrl+B将剪切板中的BLLDR块数据从分区剩余空间第一扇区第一字节处(偏移地址:126D542C00)写入,见图16。
(图16)然后,按“保存”图标,将改动的扇区数据进行保存。
从数据显示来看,已经把BLLDR文件完整的复制到了分区剩余空间起始处,如图17所示。
(图17)期间遇提示选择“OK”及“YES”,最后结果如图18所示:(图18)做完了上面的工作,现在我们可以编辑XORLDR的第四个菜单项—―“从绝对扇区启动BLLDR”。
从图18中我们可以得出BLLDR文件在分区剩余空间占用的第一扇区号为154577430,大小为243KB,即所占用的扇区(512B)数为243*2=486(个)。
该文件为GRLDR 改名而来,故其文件类型为“GRLDR.MBR/GRLDR”。
据此可编辑菜单项如图19所示:(图19)3.5 从文件启动Cdlnux无线社区版这个没什么好说的了,/BOOT/CDLINUX.BIN为一GRLDR内置菜单,用于装载/Cdlinux/boot/menu.lst这个菜单文件。
菜单编辑如图20所示:(图20)3.6 从文件启动我的DOS工具箱现在的XORLDR版本开始支持从文件启动IMA、IMG映像。
在文件类型选项中设置了把映像文件虚拟成FD0还是HD0的选项。
这样,我们可以把IMG格式的PE或者RAMOS直接做为XORLDR程序的一个启动项来加载,很是方便。
既然是从文件启动,则可以选择是从目录启动还是从绝对扇区启动,如是后者,也能如前所述将映像文件复制到分区空间,只要您的分区剩余空间预留得足够大。
另外,从绝对扇区启动文件不能超过9999扇区,即不能超过4.88M。
这里,我们选择从目录启动DOS时代菜鸟的“我的DOS工具箱”,如图21:(图21)从表面上看,比较小巧的IMA文件虚拟成FD0,相对较大的IMG文件可虚拟成HD0,但实际上比较多的IMG文件是FD软盘格式的。
具体使用哪种形式启动需要自行探索。
如前所述,从绝对扇区启动文件最大可支持4.88M,那么我们可以把相对小一些的磁盘维护工具如Diskgenuis、gdisk等IMG/IMA文件放到相对安全的分区剩余空间,然后从绝对扇区加载之,即使分区表损坏也能进行维护了。