文档详情

双系统安装BCD修改

d****1
实名认证
店铺
DOCX
16.75KB
约4页
文档ID:153388942
双系统安装BCD修改_第1页
1/4

双系统安装BCD修改我的电脑装了双系统:Win2003 SP2 (C盘)和Win2008 SP2 (D盘),最近2003 一启 动就蓝屏unknown hard error,安全模式也进不去,恢复注册表等方法试过也不行,但2008 正常,覆盖安装2003也不解决,看来只有格盘重装了重装2003和应用软件后,系统恢复 正常运行下一步就应该是恢复双启动菜单了但我手头没有其他软件,只有系统安装盘, 只好研究令我头大的那个bcdedit微软的说明文字让我是一头雾水,上网查找了一些资料 终于清楚了怎么用1. 用2008的光盘启动到修复计算机下的命令提示符,在命令提示符下运行 X:\boot\bootsect.exe /nt60 sys(X是光驱盘符)把2008的启动扇区写入C盘2. 运行 bootrec.exe /rebuildbcd 重建启动菜单bootrec.exe的用法类似于XP的故障恢复控制台,常用参数如下:/fixmbr修复主引导记录/fixboot修复启动扇区/scanos扫描并添加已有的系统,注意扫描不到XP/rebuildbcd重建整个BCD (启动配置数据),这次由于格了 C盘,所以必须重建3. 把2008系统目录下的boot\pcat文件夹(\Windows\Boot\pcat)下所有文件复制到c:\boot 目录,命令:xcopy D:\Windows\boot\pcat\*.* c:\boot /e(/e 表示复制子目录)4. 把 \Windows\boot\fonts 下所有文件复制到U c:\boot\fonts 目录:xcopy D:\Windows\boot\fonts\*.* c:\boot\fonts /e。

注意系统会询问目标是文件还是目录,别选错了!5. 把boot目录下的bootmgr移动到C盘根目录下,命令:move c:\boot\bootmgr c:\6. 把boot目录和bootmgr文件添加隐藏、系统等属性,防止误操作attrib +r +h +s +a c:\boot 和 c:\bootmgr7. 从硬盘启动,现在2008已经能正常使用,但是2003没有启动项,要手工添加,这里 就要用到bcdedit以管理员身份运行CMD,键入以下命令:bcdedit /create {ntldr} /d "Windows 2003"(创建一个基于 NTLDR 的启动项,菜单里显 示为 “Windows 2003”)bcdedit /set {ntldr} device partition=C:bcdedit /set {ntldr} path \ntldrbcdedit /displayorder {ntldr} /addfirst (把刚才创建的这个条目显示在启动菜单的第一位) bcdedit /toolsdisplayorder {memdiag} /addfirst (在启动菜单里添加内存诊断工具)重启后,双启动菜单恢复正常!bcdedit 说明:在Vista/2008下,我们通过msconfig的“启动”选项卡可调整启动时的参数,也可通过 系统属性-高级-启动和故障恢复对引导菜单进行调整。

但这些项目和XP是类似的有些功 能在XP下非得修改boot.ini才能完成,比如添加一个启动项、修改启动菜单里的文字等, 这些在VISTA下就只有用bcdedit 了这是一个命令行工具,必须以管理员身份运行只要 有点英语基础的人,看到命令都能猜出是什么含义,可是微软的帮助就是那么让人费解其 实对我们有用的参数也就那么几个一、 备份和恢复启动配置文件为减少像我这样的麻烦,大家在平时可以把启动配置数据导出来,恢复就很简单了你 也可以自己建一个配置文件,然后把启动项加入其中,以后就可以去别的电脑上用了例如:bcdedit /createstore "C:\1.bcd"创建一个名为 C:\1.bcd 的启动配置文件bcdedit /export "C:\2.dat"把启动配置导出到 C:\2.datbcdedit /import "C:\3.abc"从 C:\3.abc 导入启动配置二、 标识符每一个bcdedit中的启动项都有一个唯一的标识符,格式类似于Windows的CLSID,如 {791d518d-3526-11de-8dab-b4cd0d61d150}但有几个特殊的标识符是我们需要记住的。

{default}默认启动项{ntldr}基于 NTLDR 启动的系统,如 NT4.0、XP、2003{current}当前的Vista启动项{bootmgr} Windows启动管理器,这个一般不用管,会自动生成{memdiag} Windows 内存诊断直接运行bcdedit.exe就可以列出所有的启动项了,大家可以把标识符记一下以下的命令如果要修改自己创建的启动配置文件而不是引导菜单,只要用/store指定文 件名即可如:bcdedit /store "C:\1.bcd" /create {ntldr} /d "XP"三、 创建和修改启动项目创建一个 XP 的启动项:bcdedit /create {ntldr} /d "XP"创建一个 Vista 的启动项:bcdedit /create /d "Vista" /application osloader复制启动项:bcdedit /copy要复制的标识符/d描述/d指定启动菜单里的文字,可以自己起,不要忘了引号/application指定启动项的“应用程序类型”,创建非XP类型的启动项时才需要常用 的有两种:osloader (操作系统加载器)和bootsector(启动扇区)。

一般来说VISTA都是从 某个文件开始启动的,应该指定为“操作系统加载器”类型,如果是要从某个文件里读取启 动扇区(如各种版本的LINUX启动文件、XP引导WinMe的bootsect.dos文件等),就应该 指定为“启动扇区”类型了第二条和第三条命令运行后系统会给出一个新的标识符,请记下,修改时要用到删除启动项:bcdedit /delete标识符但要注意,删除XP的启动项时,应加上/f参数: bcdedit /delete {ntldr} /f设置启动菜单显示时间:bcdedit /timeout数值,单位为秒设置启动项显示顺序:bcdedit /displayorder标识符如:先显示 XP 再显示 VISTA: bcdedit /displayorder {ntldr} {current}另外,用/addfirst和/addlast可以把启动项加入菜单第一位和最后一位,如 bcdedit/displayorder {ntldr} /addlast用/toolsdisplayorder可以设定启动菜单里工具的显示顺序设置默认启动项:bcdedit /default 标识符如:bcdedit /default {current}把当前的 VISTA系统设成默认启动。

四、 列出启动项我们可以用/enum列出启动项,格式为bcdedit /enum应用程序类型[/v]其中“应用程序类型”我们只需要知道常见的两种:active和allactive指的是启动菜 单上有的项目,all则是所有项目/v是一个可选参数,使用它后,在列表的“Windows Boot Manager”部分的默认系统和 显示顺序中,将以完整标识符(就是一长串的那种)代替显示原有的{default}、{ntldr}等特 殊标识符一般不需要使用我们刚才提到的直接运行bcdedit等同于运行bcdedit /enum active0那么这个有什么用呢?举个例子,假设你装了几个VISTA引导类型的系统(比如2008 和7、VISTA HB和U等),后来重装了其中一个或几个,那你有可能会发现启动菜单上并 没有把你的这些VISTA全显示出来,你还得通过bcdedit手动添加缺少的系统而通过上面 的介绍大家可以看到,创建和修改新的VISTA启动项的参数时要用到系统生成的一长串标 识符,而不是{current }这么简单万一在修改参数的时候你忘了标识符怎么办呢?由于我们 一般都习惯到最后才设置引导菜单上的显示顺序,你直接用bcdedit列启动项是看不出来的。

这时用bcdedit /enum all就可以看到引导菜单上没有的启动项了五、 设置启动项的参数在启动项列表中,大家可以看到每一项的下面都有很多参数,这些命令就可以设置参数 基本格式如下:设置参数:bcdedit /set标识符参数名参数值删除参数:bcdedit /deletevalue标识符参数名如果不指定标识符,则默认为当前系统,即{current}我们需要掌握的几个参数如下:device:启动设备,如 bcdedit /set {ntldr} device partition=C:设置 XP 启动分区为 C 盘 对于{bootmgr}来说也是C盘,对于VISTA来说只要把C换成VISTA所在分区即可osdevice:系统启动设备,只在VISTA启动项里有效,一般设成和device 一样path:启动文件路径,XP 是\ntldr, Vista 是\Windows\system32\winload.exedescription :启动菜单里显示的文字nx: DEP设置,类似于XP,可设为OptIn、OptOut这个,大家也可以列出启动项看一下在菜单里选择了要启动的系统后,bootmgr会从device指定的启动设备去寻找path中的 启动文件,从而启动对应的操作系统。

清楚了这一点,我们配置启动项就不困难了下面再举一个例子:Vista和Win ME双启动大家知道Win ME是微软推出的9X内核终结版,很多人说它是垃圾,其实Win ME不 管从哪方面说都比98好(用过才知道)它可以说是9X的精品,是当时最好的家用娱乐操 作系统,既保留了 98的良好兼容性又有不错的娱乐性能和软硬件支持我对WinMe感情还 是很深的,它陪伴我走过了 8年家里电脑还在用着它不过,现在WinME已经过时了, 我举例的目的只是告诉大家启动扇区文件的引导方法原理:装过WinMe和XP双系统的朋友都知道,C盘根目录下有一个bootsect.dos文件, 这就是WinMe的引导扇区boot.ini文件里有一句 C:\=***,其实完整的语句是: C:\bootsect.dos=***当在启动菜单上选择WinMe时,系统就会从bootsect.dos读取引导扇 区从而启动WinMe再后来,这种方法就被广泛用于一些XP下的DOS工具箱软件中实际上,根据这个原理,我们完全可以用Vista的引导程序启动WinMe但由于在WinMe 下无法运行Vista的安装程序,所以我们得先把WinMe的引导扇区提取出来。

方法是:先 安装好WinMe,然后在WinMe下打开DOS窗口,运行DEBUG,再依次输入以下命令:-L 100 2 0 1-N C:\bootsect.dos-R CX200-W-Q说明:第一行把C盘的引导扇区读到内存里,第二行指定保存的文件名,第三、四行 指定要写入200H个字节(即512D)的数据,第五行把引导扇区写入文件,第六行退出接着大家可以给它加上相应的属性,防止误操作破坏文件然后用Vista光盘启动,把Vista装在另一个分区里,装好后你会发现WinMe无法启动 了下一步我们就要修改引导菜单创建一个WinMe的引导项并加入菜单中上面我们说过提取出来的是WinMe的引导扇 区,所以应该创建为引导扇区类型:bcdedit /create /d "Windows ME" /application bootsector 并记下系统给出的标识符(下面 以ID代替)bcdedit /displayorder ID /addlast给启动项设置启动文件:bcdedit /set ID device partition=C: bcdedit /set ID path \bootsect.dos请注意这里的路径应该以实际情况为准,启动分区(即引导扇区文件存放的分区)应该 以Vista下的盘符为准(Vista从光盘启动安装时会强行把所选分区改为C盘,所以盘符会不 一样)我试过,引导成功。

下载提示
相关文档
正为您匹配相似的精品文档