直接用bcdedit创建bootmgr数据库和修复启动菜单

使用下面方法之前需要bcdedit和bootsect两条命令,这两条命令可以到vista或者windows 7安装光盘上获得。bootsect.exe文件在vista和windows 7的安装光盘的boot目录下,而bcdedit.exe文件可以在安装了vista系统或者windows 7系统的电脑上的%windir%\system32目录下获得,当然也可以使用imagex命令挂载vista或者windows 7安装光盘里source\install.wim文件,然后到windows\system32下也能找到bcdedit命令。至于imagex命令可以到微软官方下载WAIK工具包。

1、创建BCD数据库

将安装光盘上的boot文件夹和bootmgr文件一起复制到c盘,然后删除C:\Boot\bcd文件。配置 BCD 存储在此步骤中,使用 BCDEdit 新建名为 BCD 的启动配置文件。BCD 替换 Boot.ini。BCDEdit 是旨在管理 BCD 存储的命令行工具。Windows PE 和 Windows Vista 中都提供 BCDEdit。例如,进入bcdedit所在目录执行如下命令:

Bcdedit /createstore c:\BCD

bcdedit /import c:\bcd

Bcdedit /create {bootmgr} /d "Boot Manager"

Bcdedit /set {bootmgr} device boot

bcdedit /set {bootmgr} locale en-US //可以不设置,默认为英文

2、添加Windows XP启动菜单:

bcdedit /create {ntldr} /d " Windows XP Professional"

bcdedit /set {ntldr} path \ntldr

bcdedit /set {ntldr} device partition=c:

bcdedit /displayorder {ntldr} -addlast

3、添加Windows 7启动菜单

Bcdedit /create /d " Windows 7 Ultimate " -application osloader

这条命令完后会返回一个GUID值,如:{faef23c1-6efe-11de-b779-b2c7bec45a2c}

The entry {uid} was successfully created.

接下来{uid}这个GUID值就表示是Windows 7的菜单项。

Bcdedit /set {uid} osdevice partition=E:

Bcdedit /set {uid} device partition=E:

Bcdedit /set {uid} path \windows\system32\winload.exe

Bcdedit /set {uid} systemroot \windows

Bcdedit/displayorder {uid} -addlast

4、添加PE 1.0启动菜单

bcdedit /copy {ntldr} /d "Windows PE"

//The entry {uid} was successfully

bcdedit /set {uid} path \LDRXPE

bcdedit /set {uid} device partition=c:

bcdedit /displayorder {uid} -addlast

5、添加Ubuntu9.04启动菜单

下载grub4dos软件包,提取文件grldr 和grldr.mbr拷贝到C盘根目录

bcdedit /create /d "GRUB MENU" /application bootsector #建立一个名称为“GRUB MENU”,实模式启动扇区的启动项

生成{ID}复制下来

bcdedit /set {ID} device partition=c: #设置引导扇区文件所在的分区,grldr.mbr所在分区

bcdedit /set {ID} path \grldr.mbr #指定引导扇区文件的路径和文件名

bcdedit /displayorder {ID} /addlast #增加这个Ubuntu的菜单项到末尾。

下面修改menu.lst,就行了。

附:我的Ubuntu9.04 menu.lst

title      Ubuntu 9.04, kernel 2.6.28-12-generic

root      ()/ubuntu/disks

kernel    /boot/vmlinuz-2.6.28-12-generic root=UUID=2414A33A14A30DBC loop=/ubuntu/disks/root.disk ro quiet splash

initrd    /boot/initrd.img-2.6.28-12-generic

6、设置默认的启动条目和选择时间

Bcdedit /default {uid}

bcdedit /timeout 7

7、修改启动参数模式

bootsect /nt: (nt52是用ntldr方式启动,即XP启动菜单方式启动;nt60则是使用VISTA新式的bootmgr启动菜单。)

本篇文章来源于 Linux公社网站(www.linuxidc.com)  原文链接:http://www.linuxidc.com/Linux/2013-11/92756.htm

最新文章

  1. 基于百度定位及天气获取的DEMO
  2. HDU pog loves szh II (数的处理)
  3. ThinkPhp学习13
  4. VS2015 'utf-8' codec can't decode byte
  5. python文件处理相关函数
  6. Android 9.0适配遇到的问题1
  7. Repeater取不到服务端控件
  8. day11 函数的参数列表
  9. V-REP与C++初步通信测试
  10. mysql 初识数据库 目录
  11. [svc]centos6使用chkconfig治理服务和其原理
  12. hbase 学习(十五)缓存机制以及可以利用SSD作为存储的BucketCache
  13. Template msg
  14. WPF 获取表格里面的内容
  15. Atom+Nuclide(Windows)开发ReactNative
  16. CodeVS1380 没有上司的舞会 [树形DP]
  17. bzoj 1927 [Sdoi2010]星际竞速——网络流
  18. es6 class类实例、静态、私有方法属性笔记
  19. HDU 1358 Period(kmp简单解决)
  20. C#反射 程序域

热门文章

  1. es6入门5--class类的基本用法
  2. 五分钟搞定 Linux 文档全部知识,就看这篇文章
  3. EOS帐户交易的构建命令
  4. 算法设计与分析-HomeWork
  5. NET?.NET Framework?.NET Core?
  6. Ubuntu常用指令集
  7. spring之控制反转
  8. SpriingMVC执行流程结构
  9. JSP jsp内置对象
  10. Collections集合工具类,集合嵌套,集合综合案例斗地主