windows下手动修改/修复启动项

众所周知
Windows操作系统主要依赖Boot.ini文件来确定计算机在引导过程中显示的可供选取的操作系统类别。系统安装时,会在引导分区的根目录中建立引导菜单文件 boot.ini。boot.ini 在缺省状态下被设定为隐含和系统文件属性,并且被标识为只读文件。使用这个文件可以轻松对电脑中的多系统进行引导,还可以通过该引导文件,设置个性化的启动菜单。

但是不同的硬盘格式引导方式是不一样的,目前基本分为mbr和gpt两种格式,而且两种格式的硬盘分区表也完全不同。
MBR分区表的硬盘最多能划分4个主分区磁盘,并且MBR最大支持2TB的硬盘,但是其兼容性较好。
而gpt作为一直较新的硬盘格式,没有分区划分限制,最大好像支持18个EB大(这里科普一下1eb=1024pb=1024×1024t),真的好大,我这个穷人不敢奢望那么大的硬盘。
mbr是“主引导记录”,它有自己的启动代码,一旦启动代码异常,系统就没法启动,只有通过修复才能启动系统。
gpt是一个正逐渐取代mbr的新标准,它由uefi辅住而形成的,这样就有了uefi用于取代老旧的bios,而gpt则取代老旧的mbr。磁盘驱动器容量可以大得多,大到操作系统和文件系统都没法支持。它同时还支持几乎有的64位的win10,win8,win7和Vista,以及所对应的服务器都能从gpt启动。

在MBR格式硬盘中,分区信息直接存储于主引导记录(MBR)中(主引导记录中还存储着系统的引导程序)。但在GPT格式硬盘中,分区表的位置信息储存在GPT头中。但出于兼容性考虑,硬盘的第一个扇区仍然用作MBR,之后才是GPT头。这个MBR也叫做保护性MBR。

回归主题,由此可知硬盘目前有mbr+bios启动和gpt+uefi启动,我们如果想实现硬盘格式的转换就需要更改一下启动文件了。
以我的一台win7虚拟机为例,其启动方式为mbr+bios 启动文件在C:\Windows\Boot\EFI中
在这里插入图片描述
主要文件都在这了,一般情况下就这些文件也不会出现变化,如果我们想将其更改为gpt+uefi启动的话就要在文件上做点手脚了。

先看看UEFI下Windows的启动流程:
UEFI BIOS→ESP分区→\efi\Microsoft\boot\bootmgfw.efi→efi\Microsoft\Boot\BCD→\Windows\system32\winload.efi→加载内核启动系统
我们需要划分出一块esp分区,这步可以借助分区软件来完成。在这里插入图片描述
我们可以在c盘前部划分500mb的空间,将划分出的重建为esp分区,这个分区是隐藏的。如图:在这里插入图片描述
那个esp分区使用来存放我们的启动文件,我们先来创建启动文件:
首先新建一个EFI文件夹。在这里插入图片描述
其次在该文件夹中新建两个文件:BOOT 和MICROSOFT
在这里插入图片描述
然后在回到我们原bios启动文件中,在这里插入图片描述
将这个文件复制到新建的BOOT文件夹中,改名为bootx64.efi x64是表示64位系统,
然后我们再回到原目录,全部复制,这次不做文件名
更改在这里插入图片描述
将文件复制到MICROSOFT中,打完收工。在这里插入图片描述
在这里插入图片描述再将创建完成的文件存放到esp分区中就ok了,这些操作可以在pe中完成,不放心的话用pe自带的uefi修复工具再修复下基本就ok了。

如果我写的有些复杂,可以看看另一位师傅写的:
https://blog.csdn.net/hq1097/article/details/81364147

发布了16 篇原创文章 · 获赞 1 · 访问量 5970

猜你喜欢

转载自blog.csdn.net/weixin_44398914/article/details/104063635