一文详解U盘启动UEFI/Legacy方式以及GPT/MBR关系
对于装系统的老手而说一直想研究一下装系统的原理,以及面对一些问题时的解决思路,故对以前的方法进行原理上的解释,主要想理解其底层原理。
引导模式
MBR分区可以同时支持UEFI和Legacy引导,我们可以看一下微pe制作的启动盘,它就是MBR格式却可以同时支持UEFI和Legacy,因为里面有两种引导文件。
GPT分区也可以同时支持UEFI和Legacy引导,我们可以看一下ventory制作的启动盘,它既可以采用MBR分区支持的UEFI和Legacy,也可以采用GPT分区支持的UEFI和Legacy,也是因为里面有两种引导文件。
所以说安装系统时引导模式和硬盘格式是否支持无关,我们可以做到在MBR格式下同时支持UEFI和Legacy来引导Windows10系统,同理在GPT格式下同时支持UEFI和Legacy来引导Windows10系统也可以,原理就是有两个引导文件。但我们安装系统时没有必要同时使用UEFI和Legacy来引导系统,只会选择一种引导模式来安装系统,理论上UEFI对应GPT,在GPT硬盘上生成UEFI引导文件,Legacy对应MBR,在MBR硬盘上生成Legacy引导文件,所以后面安装时出现的问题也是基于理论上UEFI必须对应GPT,Legacy必须对应MBR。
当我们使用微pe U盘启动工具时,会有UEFI和Legacy选项,这是因为微pe支持两种模式启动,U盘中有两种引导文件。
当我们使用微软官方U盘启动工具时,也会发现有UEFI和Legacy选项,这是因为Windows10本身支持两种模式启动,U盘中有两种引导文件。
当我们使用微ventory U盘启动工具时,会有UEFI和Legacy选项,这是因为ventory支持两种模式启动,U盘中有两种引导文件。
所以当我们使用微pe U盘选择UEFI启动时进入pe系统后选择Windows安装工具也是UEFI模式,同理如果选择Legacy启动进入pe系统后选择Windows安装工具就是Legacy模式。
现在有集成的ventory系统,它的原理也是如此。使用ventoryU盘UEFI启动时,直接选择Windows.iso就采用的是UEFI模式,选择微pe.iso也采用的是UEFI模式。在微pe里面再选择Windows安装程序也是UEFI模式。
同理使用ventoryU盘Legacy启动时,直接选择Windows.iso就采用的是Legacy模式,选择微pe.iso也采用的是Legacy模式。在微pe里面再选择Windows安装程序也是Legacy模式。
如果我们将pe系统直接安装到硬盘,电脑启动是会显示两个系统,此时选择pe系统时,由于pe系统本身支持UEFI和Legacy两种模式,此时就是采用系统当前的引导模式。如果硬盘格式是GPT那么系统就是UEFI引导模式,进pe系统也是UEFI引导模式。如果硬盘格式是MBR那么系统就是Legacy引导模式,进pe系统也是Legacy引导模式。
分区工具DiskGenius分区
DiskGenius只是对硬盘进行操作,和采用UEFI启动还是Legacy启动都没有任何关系。
1、GPT快速分区
分区结束硬盘界面

安装程序中硬盘界面

2、MBR快速分区
分区结束硬盘界面

安装程序中硬盘界面

备注:以上的是一个统一规范,但GPT硬盘分区也可以有MBR的盘符样式,MBR硬盘分区也可以有GPT的盘符样式。当我们无法安装系统时,可以转换分区表类型,但是它的盘符样式还是不变。
Windows安装工具分区
1、UEFI启动
原先硬盘格式为GPT

此时分区结束后的硬盘分区表类型为GPT
原先硬盘格式为MBR

此时分区结束后的硬盘分区表类型为GPT
2、Legacy启动
原先硬盘格式为GPT

此时分区结束后的硬盘分区表类型为MBR
原先硬盘格式为MBR

此时分区结束后的硬盘分区表类型为MBR
结论:
安装工具分区最终的盘符样式取决于采用的引导方式。
如果你采用UEFI引导不管之前硬盘是GPT还是MBR分完之后都是GPT格式,且盘符样式都一样。
如果你采用Legacy引导不管之前硬盘是GPT还是MBR分完之后都是MBR格式,且盘符样式都一样。
安装时出现的问题


重点:
UEFI必须对应GPT,Legacy必须对应MBR。
问题描述:
当我们使用Windows安装工具安装系统时如果我们采用UEFI启动U盘,而硬盘分区格式是MBR时会出现无法安装的问题。如果采用Legacy启动U盘,而硬盘分区格式是GPT时也会出现无法安装的问题。
原因:当我们使用UEFI模式启动U盘,打开Windows系统中setup安装程序,打开就是UEFI模式的安装程序,所以如果此时你的硬盘格式时MBR时就会无法安装。同理采用Legacy模式启动U盘,打开Windows系统中setup安装程序,打开就是Legacy模式的安装程序,所以如果此时你的硬盘格式时GPT时也会无法安装。
解决方法
解决方法一:
转换目标磁盘为MBR分区表,如果希望或需要保持Legacy BIOS引导模式进行安装,您需要将目标磁盘的分区表转换为MBR格式。
shift+F10打开命令行,依次输入命令如下图所示。进去命令窗口后先输入diskpart;
1、输入list disk,回车键确定;(会列出所有的磁盘,记住自己硬盘的磁盘号,通过容量大小就可以分辨了,如下图所示,磁盘0就是我们的硬盘,磁盘1就是U盘);
2、输入select disk 0,回车键确定;(选择磁盘0,也就是我们的硬盘,就是准备做系统的硬盘);3、输入clean,回车键确定;(清空磁盘,相当于格式化全盘);
4、输入convert mbr,回车键确定;(将该硬盘转换为MBR格式,如果想要将硬盘转化为GPT,那就是输入“convert gpt”);
解决方法二:
如果您的U盘支持多种启动模式,尝试将U盘启动模式改为UEFI模式。重启电脑并进入BIOS设置界面,将U盘调整为第一启动设备,并确保它被识别为UEFI模式。保存设置并退出BIOS,电脑将重启并从U盘以UEFI模式引导。
解决方法三(建议采用此方法)
在pe系统中使用Cgi工具进行还原。
Cgi本质上是对硬盘进行还原操作,和使用UEFI还是Legacy启动没有任何关系。
当使用UEFI启动而你的硬盘格式是MBR,就可以使用Cgi还原系统成功。
当使用Legacy启动而你的硬盘格式是GPT,也可以使用Cgi还原系统成功。
拓展
主板启动方式>PE启动方式>硬盘格式>系统引导文件
先确定主板启动方式,再选择支持该启动方式的PE,然后选择正确的硬盘格式,最后看生成的引导文件能不能成功的引导系统。
主板同时支持UEFI和Legacy引导模式,我们一般会在硬盘中安装一种模式,并生成对应的引导文件。
如果你是UEFI引导文件,BIOS模式就是UEFI。
如果你是Legacy引导文件,BIOS模式就是BIOS。
如果你是两者引导文件都有,就需要选择一种,选择哪种,就是哪种主板来引导。
相关文章:
一文详解U盘启动UEFI/Legacy方式以及GPT/MBR关系
对于装系统的老手而说一直想研究一下装系统的原理,以及面对一些问题时的解决思路,故对以前的方法进行原理上的解释,主要想理解其底层原理。 引导模式 MBR分区可以同时支持UEFI和Legacy引导,我们可以看一下微pe制作的启动盘&#…...
Unity Shader 学习13:屏幕后处理 - 使用高斯模糊的Bloom辉光效果
目录 一、基本的后处理流程 - 以将画面转化为灰度图为例 1. C#调用shader 2. Shader实现效果 二、Bloom辉光效果 1. 主要变量 2. Shader效果 (1)提取较亮区域 - pass1 (2)高斯模糊 - pass2&3 (3ÿ…...
小迪安全-24天-文件管理,显示上传,黑白名单,访问控制
上节课回顾,token问题 没有更新token值,造成了复用 加上这段代码就好了,就不会复用了 文件管理-文件上传 upload.html文件,找ai生成就行 uoload.php接受文件上传的信息 这里在写个临时文件存储换个地方 因为上面临时文件存在c盘…...
java23种设计模式-建造者模式
建造者模式(Builder Pattern)学习笔记 1. 模式定义 建造者模式是一种创建型设计模式,通过分步构建复杂对象的方式,将对象的构建过程与表示分离。允许使用相同的构建过程创建不同的对象表示。 2. 适用场景 ✅ 需要创建包含多个…...
JMeter 中实现 100 个用户在 3 秒内并发登录
在 JMeter 中实现 100 个用户在 3 秒内并发登录,需要合理配置线程组、定时器和测试逻辑。以下是具体步骤: 1. 创建测试计划 打开 JMeter。右键点击“Test Plan”,选择 Add > Threads (Users) > Thread Group。 : 设置为 100(模拟 100 个用户)。 : 设置为 3...
SOME/IP-SD -- 协议英文原文讲解2
前言 SOME/IP协议越来越多的用于汽车电子行业中,关于协议详细完全的中文资料却没有,所以我将结合工作经验并对照英文原版协议做一系列的文章。基本分三大块: 1. SOME/IP协议讲解 2. SOME/IP-SD协议讲解 3. python/C举例调试讲解 5.1.2.2 S…...
IntelliJ IDEA中Maven配置全指南
一、环境准备与基础配置 1.1 Windows 环境下载并配置 Maven 见此篇博文:环境配置 1.2 IDEA配置步骤 打开设置面板:File → Settings → Build → Build Tools → Maven 关键配置项: Maven home path E:\apache-maven-3.9.9 (…...
第438场周赛:判断操作后字符串中的数字是否相等、提取至多 K 个元素的最大总和、判断操作后字符串中的数字是否相等 Ⅱ、正方形上的点之间的最大距离
Q1、判断操作后字符串中的数字是否相等 1、题目描述 给你一个由数字组成的字符串 s 。重复执行以下操作,直到字符串恰好包含 两个 数字: 从第一个数字开始,对于 s 中的每一对连续数字,计算这两个数字的和 模 10。用计算得到的新…...
20-R 绘图 - 饼图
R 绘图 - 饼图 R 语言提供来大量的库来实现绘图功能。 饼图,或称饼状图,是一个划分为几个扇形的圆形统计图表,用于描述量、频率或百分比之间的相对关系。 R 语言使用 pie() 函数来实现饼图,语法格式如下: pie(x, l…...
【LLM】R1复现项目(SimpleRL、OpenR1、LogitRL、TinyZero)持续更新
note (1)未来的工作需亟待解决: 支持大规模 RL 训练(PPO、GRPO 等)的开源基础框架用于稳定训练的 GRPO 训练超参的自动化调优RL 训练数据的配比(难度、领域、任务等)基于 Instruct 模型训练 R…...
Linux 内核网络设备驱动编程:私有协议支持
一、struct net_device的通用性与私有协议的使用 struct net_device是Linux内核中用于描述网络设备的核心数据结构,它不仅限于TCP/IP协议,还可以用于支持各种类型的网络协议,包括私有协议。其原因如下: 协议无关性:struct net_device的设计是通用的,它本身并不依赖于任何…...
20241130 RocketMQ本机安装与SpringBoot整合
目录 一、RocketMQ简介 ???1.1、核心概念 ???1.2、应用场景 ???1.3、架构设计 2、RocketMQ Server安装 3、RocketMQ可视化控制台安装与使用 4、SpringBoot整合RocketMQ实现消息发送和接收? ? ? ? ? 4.1、添加maven依赖 ???4.2、yaml配置 ???4.3、…...
FFmpeg进化论:从av_register_all手动注册到编译期自动加载的技术跃迁
介绍 音视频开发都知道 FFmpeg,因此对 av_register_all 这个 API 都很熟悉,但ffmpeg 4.0 版本开始就已经废弃了,是旧版本中用于全局初始化的重要接口。 基本功能 核心作用:av_register_all() 用于注册所有封装器(muxer)、解封装器(demuxer)和协议处理器(protocol),…...
Http升级为Https - 开发/测试服环境
1.应用场景 主要用于开发/测试服环境将http升级为https, 防止前端web(浏览器)出现Mixed Content报错; 2.学习/操作 1.文档阅读 deepseek 问答; 2.整理输出 报错信息: Mixed Content: The page at <URL> was loaded over HTTPS, but requested an insecure XMLHttpRequ…...
C语言预编译
大家好,这里是小编的博客频道 小编的博客:就爱学编程 很高兴在CSDN这个大家庭与大家相识,希望能在这里与大家共同进步,共同收获更好的自己!!! 本文目录 引言正文一、预处理的作用与流程…...
算法刷题-字符串-151.反转单词
题目 给一串字符串,里面有若干单词,以空格界定单词的结束,翻转其中的单词 输入:s " hello world " 输出:“world hello” 需要注意的是,给定的字符串可能存在头空格、尾空格以及中间的空格数量…...
单片机裸机编程:状态机与其他高效编程框架
在单片机裸机编程中,状态机是一种非常强大的工具,能够有效管理复杂的逻辑和任务切换。除了状态机,还有其他几种编程模式可以在不使用 RTOS 的情况下实现高效的程序设计。以下是一些常见的方法: 1. 状态机编程 状态机通过定义系统…...
图表控件Aspose.Diagram入门教程:使用 Python 将 VSDX 转换为 PDF
将VSDX转换为PDF可让用户轻松共享图表。PDF 文件保留原始文档的布局和设计。它们广泛用于演示文稿、报告和文档。在这篇博文中,我们将探讨如何在 Python 中将 VSDX 转换为 PDF。 本文涵盖以下主题: Python VSDX 到 PDF 转换器库使用 Python 将 VSDX 转…...
DPVS-1:编译安装DPVS (ubuntu22.04)
操作系统 rootubuntu22:~# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.3 LTS Release: 22.04 Codename: jammy rootubuntu22:~# 前置软件准备 apt install git apt install meson apt install gcc ap…...
即将发布书籍 - Yocto项目实战教程:高效定制嵌入式Linux系统
以下这本书《Yocto项目实战教程:高效定制嵌入式Linux系统》即将发布,现在请哪位大佬出山写一个序或者推荐,有兴趣的大佬,请联系我! Git仓库地址: https://github.com/jerrysundev/Yocto-Project-Book.git …...
Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...
渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止
<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet: https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...
用docker来安装部署freeswitch记录
今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...
SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...
(一)单例模式
一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...
Caliper 配置文件解析:fisco-bcos.json
config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...
STM32---外部32.768K晶振(LSE)无法起振问题
晶振是否起振主要就检查两个1、晶振与MCU是否兼容;2、晶振的负载电容是否匹配 目录 一、判断晶振与MCU是否兼容 二、判断负载电容是否匹配 1. 晶振负载电容(CL)与匹配电容(CL1、CL2)的关系 2. 如何选择 CL1 和 CL…...
PHP 8.5 即将发布:管道操作符、强力调试
前不久,PHP宣布了即将在 2025 年 11 月 20 日 正式发布的 PHP 8.5!作为 PHP 语言的又一次重要迭代,PHP 8.5 承诺带来一系列旨在提升代码可读性、健壮性以及开发者效率的改进。而更令人兴奋的是,借助强大的本地开发环境 ServBay&am…...
Python 训练营打卡 Day 47
注意力热力图可视化 在day 46代码的基础上,对比不同卷积层热力图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pypl…...
Mysql故障排插与环境优化
前置知识点 最上层是一些客户端和连接服务,包含本 sock 通信和大多数jiyukehuduan/服务端工具实现的TCP/IP通信。主要完成一些简介处理、授权认证、及相关的安全方案等。在该层上引入了线程池的概念,为通过安全认证接入的客户端提供线程。同样在该层上可…...
