系统无法启动? 这个帖子帮你解决!

torai 1月前 1153

本文主要涉及到使用分区助手软件以下操作后,可能会导致的系统无法启动的解决方法:

系统迁移,分区调整,GPT转MBR/MBR转GPT,分区删除等操作。


系统无法启动的原因常见主要有以下几种:

  • BIOS/EFI启动模式设置不当。        

  • 系统分区丢失,或整个磁盘分区丢失。        

  • 引导文件配置不正确或丢失        

  • 其他原因

预备知识


在介绍解决方法之前,我们先来大概了解以下几个概念/术语:

BIOS:中文名称叫做“基本输入输出系统”,它是固化到计算机内主板ROM芯片上的程序,保存着基本输入输出的程序、开机后自检程序和系统自启动程序,它可从CMOS中读写系统设置的具体信息。

UEFI:可以理解为BIOS的升级版本,是新一代的标准,GPT磁盘上的系统启动就需要UEFI的支持(当然通过第三方引导程序,比如clover,也能实现在BIOS主板上引导GPT磁盘上的系统)

UEFI BIOS和Legacy BIOS: 由于大部分情况下网友都将UEFI和BIOS称做BIOS, 为了区分两者,就分别用UEFI BIOS和Legacy BIOS来指UEFI和BIOS。

该帖子使用BIOS一词,用来统称BIOS和UEFI。    

MBR磁盘:与GPT磁盘相对,是Windows 7系统前默认所采用的一种磁盘分区方案,该磁盘格式有以下特点:

  • 分为主分区,扩展分区(包含可创建的N个逻辑分区)。MBR最多可以创建4个主分区。

  • Windows系统引导程序需要放在活动分区中。

  • 最大支持2TB磁盘,超过2TB部分不能用来创建分区。

  • MBR磁盘上的系统需要在BIOS中开启Legacy Boot选项(在有的主板上叫做CSM)。

GPT磁盘: 是现阶段最常见的一种基于GUID磁盘分区方案,主要有以下特点:

  • 没有4个主分区的限制,可创建128个主分区,因此在GPT磁盘上,逻辑分区就没有存在的意义。

  • 支持2TB以上的磁盘分区。

  • 需要主板支持UEFI/EFI启动,2011年前后出的BIOS主板大多数都兼容EFI,可在BIOS设置中开启 UEFI boot启动相关设置。

重建MBR: 此处和MBR磁盘中指代的MBR含义不同, 在此MBR可以理解为磁盘上一个扇区(称为MBR扇区),也可以指代在该扇区中的一段主引导代码(第一阶段引导代码),主要作用就是用来加载活动分区中的系统引导程序(第二阶段引导代码),实现系统的启动。

UEFI/GPT系统: 是指安装在GPT磁盘上的系统,使用的是UEFI主板,并使用EFI启动模式。

BIOS/MBR系统: 是指安装在MBR磁盘上的系统,使用传统的BIOS主板MBR引导模式。

PE系统:基于Windows预安装环境(Windows Preinstallation Environment)而制作出来的一个可安装到U盘,CD/DVD,硬盘上的可便携式系统,常用于:系统安装,系统修复,拷贝数据,清除登录密码等一些系统辅助操作。


制作Windows PE启动盘

本贴讨论的情况是在系统启动不了的情况下,因此大部分操作都是借助通过U盘上的PE来解决,可使用市面上常见的第三方PE工具箱制作,推荐查看论坛置顶帖推荐的第三方PE: 集成分区助手,轻松备份以及引导修复工具的第三方PE工具


情形一:BIOS/EFI引导模式设置问题导致的启动问题

涉及到的功能:GPT转MBR/MBR转GPT,磁盘克隆,迁移系统到SSD    

在执行上述分区助手操作时,都需要确定BIOS的启动模式设置是否正确。


查看磁盘类型

  1. 通过U盘启动电脑。

  2. 打开分区助手,在下图中箭头所指地方就能查到磁盘类型。


修改启动模式

通过PE确定了磁盘类型后,就需要到BIOS下查看是否开启了相应选项。

  • GPT磁盘:Boot选项中,确保UEFI Boot是on或者Enabled状态。    

通常来说:有鼠标图形界面的现代BIOS,UEFI模式是默认开启的,无须另外开启。

  • MBR磁盘:Boot选项中,确保Launch CSM 或者Legacy Boot 开启20200420141923    

情形二:Windows分区,磁盘分区丢失情况导致的启动问题

涉及到功能:分区调整,手动分区删除, 动态磁盘转基本磁盘    

大部分情况下,通过分区助手对分区进行调整,都不会导致分区丢失,但是在某些极个别情况下,比如在杀毒软件的干扰,或者Windows 10 insider版本,以及其他硬件上会出现分区调整失败,导致分区丢失的情况,如果丢失的分区是系统相关分区,那么启动就会失败。

另外,有用户在扩展分区的时候,误删了系统分区(*:开头的分区),那么也会出现开机启动不了的情况。


20200420152813


使用分区助手分区恢复功能


  1. 通过U盘启动电脑,进入PE桌面,然后点击AOMEI Partition Assistant,打开分区助手PE版。 本教程使用的是论坛置顶帖的PE。    

partition-assistant-pe

  1. 点击左侧向导中的分区恢复向导功能。

partition-recover-wizard

  1. 选择要恢复分区的磁盘后,点击下一步。

wizard-selected-disk

  1. 默认使用快速搜索的方式搜索被删除的分区,如果使用该方式没有找到分区,那么请尝试使用完全搜索    

quick-search

  1. 在搜索出来的结果中,双击可以查看分区的文件,以便确认是否是要恢复的分区。确认好是需要恢复的分区后,勾选该分区,然后点击执行,即可恢复。

quick-search-resultsquick-search-results

  1. 恢复完成后,你可能会发现盘符是错乱的,此时请不要操作分区,先尝试重启系统后,能否正常启动,如果不能,那么请看情形三的解决方法

20200420155334

情形三: 引导配置不正确、丢失导致的启动问题


我们先来看看,一个正常启动的Windows在磁盘管理器中是什么状态。

bootable-system-flags

从上中我们可以看到,分区的状态栏中,括号内标明了该分区的基本状态。


针对GPT系统: 其中我们的分区C,有启动,页面文件,故障转储,基本数据分区标志,也有一个EFI系统分区标志的隐藏分区。

针对MBR系统: 其中分区C,有启动,页面文件,故障转储,主分区标志,也有一个系统,活动标志的隐藏分区。


根据微软官方的定义:

  • 系统分区(或者叫系统卷),是一个主分区,其中包含引导加载程序(boot loader),负责引导系统程序,引导扇区(boot sector)位于该分区,并且该分区必须为活动分区(针对MBR系统)。

  • 启动分区(或者叫启动卷),是包含操作系统文件夹的磁盘分区,在Windows中称为系统根目录或%systemroot% (C:\Windows)。

单个分区既可以是系统分区,也可以是启动分区(仅限MBR磁盘)。 但是,如果它们是分开的,则启动分区不包含引导加载程序,并且系统分区不含有具体的操作系统文件(C:\Windows)。

在Windows 7系统之前,默认情况下,系统分区和启动分区都在一个分区中,并默认使用盘符“ C:”。 但是,从Windows 7开始,通过镜像安装Windows时,默认会创建一个单独的系统分区,该系统分区未指定盘符,被隐藏,因此在资源管理器中无法直接查看。 启动分区仍被分配盘符“ C:”。    

因此,要想解决Windows引导问题,我们就可直接从系统分区启动分区的入手,修复这两个分区。

如何在PE下判断“系统分区”和“启动分区”?


Windows在已经出现了引导问题后,就需要通过在PE下,手动定位这两个分区,并尝试修复。

  1. 查看“磁盘类型”。        

    GPT磁盘和MBR磁盘,系统引导有些许不同,需要首先判断磁盘类型,具体如何查看类型,请参考情形一。

  2. 确定分区标志。        

    MBR磁盘:(活动分区+系统分区)+ 启动分区

    GPT磁盘: EFI系统分区 + 启动分区

如果磁盘类型是MBR,该系统是通过Legacy启动方式引导Windows。 需要确保磁盘上有活动分区标志,并且该活动分区同样也必须是系统分区。

下图就是一个典型的MBR系统,通过确定磁盘类型,活动分区的位置,就可以判断系统分区和启动分区。

20200422095629

对于GPT系统,同样也很好判断,FAT32分区就是EFI系统分区, Windows文件所在的分区就是启动分区。

20200422101138

使用微软bcdboot工具修复引导


bcdboot 是一个命令行工具,用于在电脑或设备上配置启动文件以运行 Windows 操作系统。 可在以下场景中使用该工具:

  • 部署新的windows镜像后,将启动文件添加到电脑。

  • 添加VHD虚拟硬盘的启动项。

  • 修复系统分区。 如果系统分区已损坏,可以通过 BCDBoot 使用 Windows 分区中系统分区文件的新副本来重新创建这些文件。        

  • 设置或修复双启动选项。 如果在电脑上安装了多个 Windows,可以使用 bcdboot 来添加或修复启动菜单。

通过bcdboot的修复功能,我们就可以来手动修复并配置系统分区。

  1. 启动PE,打开桌面上的Command Prompt命令行工具。20200421103604        

  2. 在命令行工具中,输入bcdboot,可查看具体参数使用示例。

       20200421103745

从上方示例中,我们可以看到bcdboot修复引导的使用方法很简单。

bcdboot 启动分区 /s 系统分区 /f 启动类型 /l 显示语言

如果要修复如下MBR系统,输入下面命令。

bcdboot C:\Windows /s E: /f BIOS /l zh-CN

20200422095629

修复如下GPT系统,则可以输入:

bcdboot C:\Windows /s F: /f UEFI /l zh-CN

20200422101138

使用傲梅引导修复工具修复

傲梅引导修复工具,是由傲梅团队推出的修复引导的小工具,支持自动识别多系统,一键修复选择的系统引导。 同时支持高级模式,可以手动选择启动分区,系统分区,以及恢复分区进行修复。


该工具可在Windows下以及Windows PE下运行。


使用方法: 


  1. 启动PE,并运行桌面上的AOMEI Boot Repair.exe,程序会自动显示识别的待修复的Windows系统。 如果通过第三方PE,则可以手动在此连接下载: https://www.disktool.cn/bbs/?thread-2068.htm
  2.  点击“一键修复”按钮,即可开始自动修复。
           
                  
  3. 点击“高级修复”,可以手动选择启动分区和系统分区来修复。
    注意,的启动分区和系统分区与上面说介绍的定义相反,也就是说,如果在启动分区选项框中,其实修复的是“系统分区, 而系统分区选项框中,指定的是”启动分区“

FAQ:(待补充)

  1. 如何查看使用的是MBR磁盘还是GPT磁盘?
  2. GPT系统的启动流程是怎样的?
  3. MBR系统是怎样启动的?
  4. 主分区,逻辑分区,活动分区,系统分区,可以在哪里看?

扩展阅读

  1. A comparison of GPT and MBR partition structures;
  2. PC boot process – UEFI with GPT    

注解:

  1. Definition of System and Boot Partition    
最新回复 (0)
返回