bcdedit 无法打开启动配置数据存储  解决方案大全(适用于UEFI+MBR或UEFI+GPT)

对于Windows NT6系列的用户来说,现在的系统引导趋势是采用UEFI+GPT模式,,那么在GPT分区下,windows系列引导故障处理程序有bcdedit,bcdboot等。。正常情况下,执行bcdedit命令可以查看当前系统的引导情况,然而种种情况下,会出现意外的案列,下面进行相应的处理方案。

首先列出可能出现的现象:

1.无法打开启动配置数据存储 拒绝访问

2.无法打开启动配置数据存储 系统找不到指定的文件

3.无法打开启动配置数据存储 找不到请求的系统设备

4.执行msconfig,引导标签页中内容为空
5.系统启动和故障恢复中,操作系统列表内容为空
网上给出的解决方案大多为:
1,cmd以管理员权限执行,这可以解决第一种故障现象。

2,对bcd文件所在的分区标记为活动分区,然而这仅适用于mbr分区模式,不适用于gpt分区方式

那么该如何解决其他的故障呢??

首先我们得从uefi+gpt的windows引导说起,流程如下(http://www.heu8.com/647.html   ):

UEFI BIOS→ESP分区→ EFI/Boot/bootx64.efi→\efi\Microsoft\boot\bootmgfw.efi→efi\Microsoft\Boot\BCD→\Windows\system32\winload.efi→加载内核启动系统

上述流程中的ESP分区(标准的ESP分区可以使用Diskgenious软件创建),为UEFI下Windows的引导分区,实际上就是一个FAT格式的分区,并无其他特殊的要求。并不像在传统BIOS下,启动Windows需要“活动的主分区”。在ESP分区下,存在几个重要的文件(“√”表示必不可少的文件):

√EFI/Boot/bootx64.efi(或bootia32.efi)
√ EFI/Microsoft/Boot/bootmgfw.efi
√ EFI/Microsoft/Boot/BCD
EFI/Microsoft/Boot/zh-CN

上面这几个文件可以系统安装光盘中找到,我们只要简单的使用“复制”-“粘贴”,放到ESP分区即可。当然也可以通过命令进行操作:

bcdboot C:\windows /l zh-cn

上述命令成功执行的前提:1、必须存在bcdboot.exe文件(原版Windows8.1/8/7的C:\Windows\System32下有此文件)。2、命令在bcdboot.exe文件所在路径下执行。3、若自行创建的FAT分区(不是标准的ESP分区),则需要执行命令:bcdboot C:\windows /l zh-cn /s Y: (Y代表FAT分区盘符)。

明明系统中存在esp分区,为什么bcdedit提示找不到呢,这种情况往往发生在ghost系统,或者不当分区操作之后。esp分区因为种种原因导致系统无法识别,这是我们需要重新新建esp分区,如下图,默认情况下esp分区类型为0xef,我们现在利用dg删除当前出现错误的esp分区,然后重新新建一个esp分区,如下图,

最后分区如下,重点注意箭头部分:

然后从系统盘中复制相应的文件,如下:

这时,我们再执行bcdedit,我们发现其运行正常了,而且msconfig,启动恢复菜单也都正常了,,所以总结产生的原因,就是esp的部分分区数据异常,导致windows无法识别,所以我们重新生成一个esp就解决了

当然对于UEFI+MBR模式下WinX64出现的这种现象,解决方案又不一样,具体如下:

mbr+uefi方式启动后,win7的bcdedit会从以下注册表读取信息,获取引导分区位置,从而将相应目录下的系统bcd文件加载到注册表HKLM\BCD00000000,然后进一步进行操作。

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control]
"FirmwareBootDevice"="multi(0)disk(0)rdisk(0)partition(1)"
"SystemBootDevice"="multi(0)disk(0)rdisk(0)partition(2)"

然而微软早期也许没有意料到会有用户在uefi+mbr模式下引导windows吧,对在mbr模式下识别系统bcd的情况没有进行相应的处理,所以导致mbr+uefi+win7x64环境下,bcdedit,msconfig,系统属性的启动和故障恢复os列表均出现了无法识别系统bcd的异常

到了win8时期,微软也许意识到这种问题,对bcdedit进行了完善,进而可以识别mbr+uefi模式下的系统bcd。所以解决方案既可以用win8的bcdedit覆盖win7版本,也可以将win8x64的bededit复制到win7x64上,运行一次,然后win7x64就可以成功识别系统bcd了,不过这种方法重启后就失效了,HKLM\BCD00000000在重启后被卸载了需要重新加载

以下为通过用procmon观察win8的bcdedit识别系统bcd的过程截图。

bcdedit无法打开启动配置数据存储相关推荐

  1. windows无法启动 bcd linux efi,bcdedit 无法打开启动配置数据存储的终极解决办法

    对于Windows NT6系列的用户来说,现在的系统引导趋势是采用UEFI+GPT模式,,那么在GPT分区下,windows系列引导故障处理程序有bcdedit,bcdboot等..正常情况下,执行b ...

  2. BCDEDIT - 启动配置数据存储编辑器

    Bcdedit.exe 命令行工具用于修改启动配置数据存储. 启动配置数据存储包含启动配置参数并控制操作系统的启动方式.这些参数以前位于 Boot.ini 文件中(在基于 BIOS 的操作系统中)或位 ...

  3. 华为云FusionInsight MRS HDFS组件数据存储策略配置指导

    操作场景 默认情况下,HDFS NameNode自动选择DataNode保存数据的副本.在实际业务中,可能存在以下场景: DataNode上可能存在不同的存储设备,数据需要选择一个合适的存储设备分级存 ...

  4. ESXI添加硬盘时提示 无法创建 VMFS 数据存储 - 无法更改主机配置

    ESXI添加硬盘时提示 无法创建 VMFS 数据存储 - 无法更改主机配置 1.打开ESXI的SSH 2.找到不能添加的硬盘路径 3.用SSH操作 1.打开ESXI的SSH 2.找到不能添加的硬盘路径 ...

  5. Excel催化剂开源第10波-VSTO开发之用户配置数据与工作薄文件一同存储

    在传统的VBA开发中,若是用的是普通加载项方法,是可以存储数据在xlam上的,若用的是Com加载项方法同时是Addins程序级别的项目开发的,配置文件没法保存到工作薄中,一般另外用配置文件来存放供调用 ...

  6. php 存储数据的方法,在PHP中存储可轻松编辑的配置数据的最快方法?

    与存储PHP变量的JSON相比,序列化更好. var_export可用于保存配置文件,而'include'可用于加载配置文件信息. 这是一种以编程方式保存配置数据且易于读取/写入的简便方法.以下是相同 ...

  7. rpm mysql 指定目录_rpm 安装并配置MySQL(包含指定数据存储路径)

    1.安装rpm包 rpm -ivh /home/mysql-rpms/*.rpm 2.拷贝配置文件 cp /usr/share/mysql/my-small.cnf /etc/my.cnf 3.修改/ ...

  8. App Inventor 2数据存储组件之:微数据库,本地存储数据App下次启动可共享读取

    数据存储一般分为两大类:本地 和 网络,本地一般是数据文件的形式存储在手机上,本地App每次启动都可以共享读取,但是不同的手机之间不可以共享数据:如果需要多个手机之间共享获取或存储数据的话,那就需要用 ...

  9. 数据中心的配置思路 存储 FC交换机 服务器

    2021-07-09 大连工作本周小结 一.存储与服务器的连接 1.服务器A的2块FC卡各连接1个光纤口,每块FC卡还各有1个口没有连接,以备将来有变更的空间,服务器B也是同样配置 2.存储的2个控制 ...

最新文章

  1. TSNE Understanding
  2. AQS(CountdownLatch、CyclicBarrier、Semaphore)、FutureTask、BlockingQueue、ForkJoin
  3. Linux 系统服务管理(启动服务/停止服务/重启服务)的命令 - chkconfig/service/systemctl
  4. Linux游戏蒸蒸日上,Wikimedia坚持开放格式,等等
  5. windows 常见环境变量(%AppData%、%TEMP%、%TMP%)
  6. 3D视觉创新方案分享:仓储VSLAM/商品三维重建/静态场景重建/表情识别等多个方向...
  7. Sensor系列之aDSP端Sensor Driver流程
  8. 工作效率低,怎么办?
  9. R语言str_c函数
  10. 江苏大学计算机学院换届,关于计算机学院各支部选举结果的批复
  11. VC++ MFC实现的优秀的开源项目
  12. Android--耗电优化
  13. PLC程序案例一:喷泉电路(采用中间继电器完成分步控制)
  14. 计算机毕业论文致谢信范文,毕业论文致谢信范文
  15. 宝塔服务器源代码修改记录,宝塔BT面板修改相关记录,所有插件免费用
  16. C++中的new和delete运算符(内存管理)
  17. Java基础学习01(JDK)
  18. 如何利用Flutter框架开发运行小程序
  19. Modbus转Profinet网关连接台达ME300案例
  20. 他在自己的荣光中如此孤独,孤独地连一个敌人都没有剩下。

热门文章

  1. 《PR基础教程入门篇-学习笔记》-001
  2. Colab防断,防止colab每隔一段时间自动断连。
  3. 2018年5月英语--停停走走
  4. 某985大学 软件工程专硕,复试线暴涨60分!
  5. WebView相关面试题
  6. 电脑搜狗,电脑搜狗输入法很卡的三种解决方法
  7. 【应用统计学】第一类/α/弃真错误与第二类/β/取伪错误的解释与举例
  8. 动态渲染select下拉框选中状态
  9. 通过五轮阿里面试,阿里实习生亲述面试经历!
  10. 低配电脑安装VMware Workstation虚拟机