BCDEDIT常用命令及使用实例

作者: lesca 分类: Tutorials,Windows 发布时间: 2012-01-30 13:36

一、BCDEDIT常用命令一览表

功能 命令行 示例
导出备份当前系统启动配置数据 bcdedit /export 把当前配置数据导出到D盘,并存为Bkup文件,双引号可要可不要
bcdedit /export “D:\Bkup”
导入并覆盖当前系统启动配置数据 bcdedit /import 把D盘Bkup配置文件导入并覆盖当前配置数据,双引号可要可不要
bcdedit /import “D:\Bkup”
显示Bcdedit全部命令帮助 bcdedit /?
bcdedit /? <command>
bcdedit /?,显示Bcdedit全部命令帮助
bcdedit /? /store,指定显示store命令帮助,命令前面的斜杠可要可不要
在储存中的列表项目 bcdedit [/store <filename>] /enum [<type> | <id>] [/v] 列出当前系统全部启动项:
bcdedit,或
bcdedit /enum,或bcdedit /enum ACTIVE
显示所有存储中的项(包括启动管理器显示项、固件应用程序、启动环境、继承项等等):
bcdedit /enum all
列出所有操作系统项:
bcdedit /enum OSLOADER
列出所有的启动管理项:
bcdedit /enum BOOTMGR
/v参数可以完整显示项标识符,而不是使用已知标识符的名称:
bcdedit /enum ACTIVE /v
设置默认启动菜单显示超时 bcdedit /timeout 将默认启动菜单显示超时时间设为5秒
bcdedit /timeout 5
创建指定启动项副本 bcdedit [/store <filename>] /copy {<id>} /d <description> 复制启动项目:
bcdedit /copy {GUID} /d “New entry”
新建启动项目 bcdedit /create [{<id>}] [/d <description>] [/application <apptype> |     /inherit [<apptype>] | /inherit DEVICE | /device] 创建Windows XP系统引导项:
bcdedit /create {ntldr} /d “Windows XP SP3”
创建一个Windows 8系统启动项:
bcdedit /create /d “Windows 8” /application osloader
删除项目 bcdedit [/store <filename>] /delete <id> [/f] [/cleanup | /nocleanup] 彻底删除指定的启动项:
bcdedit /delete {GUID} /cleanup
删除存储中涉及NTLDR的OS加载项:
bcdedit /delete {GUID} /f
删除启动配置数据存储项中的数据元素 bcdedit [/store <filename>] /deletevalue [<id>] <datatype> 删除启动管理器中的bootsequence选项:
bcdedit /deletevalue {bootmgr} bootsequence
设定项目选择项数值 bcdedit [/store <filename>] /set [{<id>}] <datatype> <value> [ /addfirst | /addlast | /remove ] 修改启动项描述:
bcdedit /set {GUID} description “Windows 7 SP2”
设置启动管理器使用的一次性启动序列 bcdedit /bootsequence <id> […] [ /addfirst | /addlast | /remove ] 设定多个启动序列(ID之间使用空格):
bcdedit /bootsequence {GUID1} {GUID2} {GUID3} { …}
加入操作系统项目为启动列表最后项:
bcdedit /bootsequence {GUID} /addlast
设定默认启动项目 bcdedit /default <id> 设定GUID序列为默认启动项:
bcdedit /default {GUID}
将基于NTLDR的OS设置为默认项(天缘注:多个NTLDR没问题?):
bcdedit /default {ntldr}
设置启用管理器使用的显示顺序 bcdedit /displayorder <id> […] [ /addfirst | /addlast | /remove ] 将指定OS项添加到启动管理显示顺序末尾:
bcdedit /displayorder  {GUID} /addlast
启用或禁用指定项的紧急管理服务 bcdedit /bootems [<id>] { ON | OFF } 开启启动管理器紧急处理服务:
bcdedit /bootems {bootmgr} ON
启用或禁用指定操作系统启动项的紧急管理服务 bcdedit /ems [<id>] { ON | OFF } 启用当前操作系统启动项的紧急管理服务:
bcdedit /ems ON
设置系统全局紧急管理服务设置 bcdedit /emssettings [ BIOS ] | [ EMSPORT:<port> | [EMSBAUDRATE:<baudrate>] ] 将紧急管理服务参数设置为使用BIOS设置:
bcdedit /emssettings BIOS

其中几个参数解释:

  • <filename> 指定要使用的存储。如果未指定此选项,则使用系统存储。详细信息,请运行 “bcdedit /? store”。
  • <id> 指定要修改的项的标识符。如果未指定,则使用 {current}。 有关标识符的详细信息,请运行 “bcdedit /? ID”。
  • <datatype> 指定将创建或修改的选项数据类型。有关数据类型的详细信息,请运行 “bcdedit /? TYPES”。
  • <value> 指定应分配给该选项的值。<value> 的格式取决于指定的数据类型。 有关数据格式的详细信息,请运行 “bcdedit /? FORMATS”。
  • 此外BCDEDIT还有几条命令上表未列出来,可以通过cmd命令行下输入bcdedit /? <command>方式查看注解,帮助相当详细。

二、BCDEDIT完整命令列表(来源Windows 7 Bcdedit帮助)

对存储执行的命令

/createstore 新建空的启动配置数据存储。
/export 将系统存储的内容导出到文件。以后可以使用该文件还原系统存储的状态。
/import 使用 /export 命令创建的备份文件来还原系统存储的状态。
/sysstore 设置系统存储设备(仅影响 EFI 系统,在重新启动后不再有效, 且仅用于系统存储设备不确定的情况下)。

对存储中的项执行的命令

/copy 复制存储中的项。
/create 在存储中新建项。
/delete 删除存储中的项。
/mirror 创建存储中项的镜像。

对项选项执行的命令

/deletevalue 删除存储中的项选项。
/set 设置存储中的项选项值。

运行 bcdedit /? TYPES 可获得这些命令使用的数据类型的列表。
运行 bcdedit /? FORMATS 可获得有效数据格式的列表。

控制输出的命令

/enum 列出存储中的项。
/v 命令行选项,完整显示项标识符,而不是使用已知标识符的名称。单独使用命令 /v 可完整显示活动类型的项标识符。

单独运行 “bcdedit” 等同于运行 “bcdedit /enum ACTIVE”。

控制启动管理器的命令

/bootsequence 为启动管理器设置一次性启动序列。
/default 设置启动管理器将使用的默认项。
/displayorder 设置启动管理器显示多重引导菜单的顺序。
/timeout 设置启动管理器的超时值。
/toolsdisplayorder 设置启动管理器显示工具菜单的顺序。

控制启动应用程序紧急管理服务的命令

/bootems 启用或禁用启动应用程序的紧急管理服务。
/ems 启用或禁用操作系统项的紧急管理服务。
/emssettings 设置全局紧急管理服务参数。

控制调试的命令

/bootdebug 启用或禁用启动应用程序的启动调试。
/dbgsettings 设置全局调试程序参数。
/debug 启用或禁用操作系统项的内核调试。
/hypervisorsettings 设置虚拟机监控程序的参数。

三、Bcdedit注意事项

1、警告:Bcdedit命令需要在管理员权限下进行操作
2、在使用BCD之前,请先备份当前系统的启动配置文件方法如下:
bcdedit /export D:\bootbkup
bcdedit /import D:\bootbkup
其中bootbkup是备份的文件名。

3、请留意标识符位置和项目名称。
启动入口最主要是四个部分:

Identifier标识符 启动入口的系统标识,可能是bootmgr、current或id形式等
device设备 一般是驱动器路径或虚拟映像,系统启动引导后入口。
path路径 是device设备的位置,系统用来定位启动文件。
description 描述——显示描述,也就是大家见到的菜单显示。
{bootmgr} 启动管理器
{current} 当前操作系统,启动时选择的系统
{default} —缺省默认的启动项
{ntldr} 早期Windows加载

四、BCDEDIT常用设置示例

删除Windows XP启动入口

bcdedit /delete {ntldr} /f

注意:对于旧版本的windows引导器需要使用/f选项删除,
对于现在使用的windows loader,则需要/cleanup选项,这是默认选项,可以省略。如:

bcdedit /delete {current}

等效于

bcdedit /delete {current} /cleanup

/cleanup选项的作用在于在引导菜单中删除对应的启动项,如果设置/nocleanup则不会从引导菜单中删除。

设置启动分区

bcdedit /set {标识符} device partition=C:

修改当前启动项描述:

bcdedit /set {current} description "Windows 7 Modified"

从E盘引导winXP

bcdedit /set {ntldr} device partition=E:

指定WinXP引导文件路径

bcdedit /set {ntldr} path \ntldr

设置XP为默认的引导系统

bcdedit /default {ntldr} 

将XP启动项移至最前

bcdedit /displayorder {ntldr} /addfirst

将当前启动项移至末尾

bcdedit /displayorder {current} /addlast

复制当前启动项并重命名

bcdedit /copy {current} /d "New Windows 7 boot entry I just copied!"

设置超时时间

bcdedit /timeout 5

新增XP启动项

bcdedit /create {ntldr} /d "Windows XP"
bcdedit /set {ntldr} device partition=F:
bcdedit /set {ntldr} path \ntldr
bcdedit /displayorder {ntldr} /addlast

增加Linux引导入口

bcdedit /create /d "GrubInstallUbuntu" /application bootsector

命令执行后会返回一个GUID,然后使用鼠标选中右键全选,并在标题栏中右键复制下来,接着再执行以下命令(命令中的GUID需要替换成上面命令返回的ID 值)。

bcdedit /set {GUID} device partition=C:
bcdedit /set {GUID} path grldr.mbr
bcdedit /displayorder {GUID} /addlast

关闭系统DEP保护:

bcdedit.exe/set {current} nx AlwaysOff

创建一个配置数据库:

bcdedit /createstore C:\Myboot

UPDATING…

更多有用的bcdedit实用语句将会不定期更新,也欢迎网友热心提供!

参考资源

基础教程:BCDEDIT常用命令及使用实例
How to Use the BCDEDIT Command Line Tool

版权声明

本文出自 Lesca 技术宅,转载时请注明出处及相应链接。

本文永久链接: https://www.lesca.cn/archives/how-to-use-bcdedit.html

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!