前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >BIOS与UEFI介绍与使用

BIOS与UEFI介绍与使用

作者头像
全栈工程师修炼指南
发布于 2022-09-28 12:50:15
发布于 2022-09-28 12:50:15
3.9K00
代码可运行
举报
运行总次数:0
代码可运行

[TOC]

0x00 快速入门

描述:英特尔已经宣布计划在2020年之前将所有芯片组完全替换为UEFI,所以说BIOS即将迎来生命周期的最后一个周期;但是我们现在UEFI附带的新电脑仍将其称为“BIOS”,符合用户的叫法;

2007年,英特尔,AMD,微软和PC制造商就新的统一可扩展固件接口(UEFI)规范达成一致。 这是一个全行业标准管理的统一扩展固件接口,并不完全由英特尔推动。

UEFI和BIOS都是低级软件,所谓低级软件就是指它们会在引导操作系统之前启动时启动,但UEFI是更现代的解决方案,支持更大的硬盘驱动器,更快的启动时间,更多的安全功能以及方便的图形和鼠标游标。

说到操作系统的引导就不得不提到操作系统的文件系统,为下面的知识进行一个扩展;

File System File System(文件系统)是存储媒介中文件存储的组织方式。

  • 不同的文件系统类型有不同的速度,灵活性,安全性和占用空间。
  • 不同操作系统只支持特定的文件系统类型。 常见的文件系统类型有 FAT16,FAT32,NTFS,EXT3,EXT4,HFS, xfs 等。
BIOS

什么是BIOS? 答: BIOS 英文全称(Basic Input Output System)即基本输入输出系统,它是位于计算机主板上的芯片中的低级软件且已经存在很长时间了,计算机启动时BIOS加载,BIOS负责唤醒计算机的硬件组件,确保它们正常运行然后运行引导加载程序来引导Windows或任何其他已安装的操作系统。并且可以在BIOS设置屏幕中配置各种设置。诸如计算机硬件配置,系统时间和引导顺序等; 启动流程:

  • 开机-POST或者开启自检-查找引导设备上存储的主引导记录和MBR-加载BootLoader-进入系统

局限性:

  • 只能从2.1TB或更少的驱动器启动,限制是由于BIOS的主引导记录(MBR分区)系统的工作方式
  • 必须以16位处理器模式运行,并且只有1 MB空间可供执行,导致初始化多个硬件设备时会出现问题,所以就是单项单项检查导致启动时间较慢;

补充:CMOS缩写代表互补金属氧化物半导体,指BIOS在主板上存储各种设置的以电池供电的存储器,在现代系统中这种方法已被闪存(也称为EEPROM)取代

传统启动方式:即是我们所说的 Legacy 模式

UEFI

什么是UEFI? 答: UEFI(Unified Extensible Firmware Interface )即通一扩展引导接口,它还以更标准化的方式引导启动EFI可执行文件,而不是从驱动器的主引导记录运行代码。

特点:

  • UEFI支持图形化操作包括图形和鼠标光标支持
  • 启动时间大幅缩短
  • 支持更大硬盘驱动器(2.1TB以上),理论限制为9.4ZB zettabytes
  • UEFI可以以32位或64位模式运行,并具有比BIOS更多的可寻址地址空间,意味着您的引导过程更快/BIOS设置更加清晰
  • 支持安全启动可以检查操作系统的有效性,以确保没有恶意软件篡改引导进程。
  • UEFI固件本身支持网络功能有助于进行远程故障排除和配置

常见组合:

  • UEFI + GPT(分区)启动方案
  • BIOS + MBR(分区)启动方案

硬盘的分区结构:

  • MBR分区表:Master Boot Record即硬盘主引导记录分区表,只支持容量在 2.1TB 以下的硬盘只能管理2.1TB,最多只支持4个主分区或三个主分区和一个扩展分区,扩展分区下可以有多个逻辑分区。
  • GPT分区表:GPT全局唯一标识分区表(GUID Partition Table),与MBR最大4个分区表项的限制相比,GPT对分区数量没有限制,但Windows最大仅支持128个GPT分区,GPT可管理硬盘大小达到了18EB。只有基于UEFI平台的主板才支持GPT分区引导启动
  • ESP分区:EFI system partition分区用于采用了EFI BIOS的电脑系统用来启动操作系统。分区内存放引导管理程序、 驱动程序、系统维护工具等。如果电脑采用了EFI系统或当前磁盘用于在EFI平台上启动操作系统,建议ESP分区为FAT16格式,容量最好大于100M,无其他特殊要求
  • MSR分区:即微软保留分区,是GPT磁盘上用于保留空间以备用的分区,例如在将磁盘转换为动态磁盘时需要使用这些 分区空间。

UEFI启动为什么那么快? UEFI相比传统的启动方式少了一个启动时候自检的过程,所以启动时间大幅度缩短;

WeiyiGeek.启动流程

对比补充

BIOS vs UEFI BIOS(Basic Input/Output System)和 UEFI(Unified Extensible Firmware Interface )是不同的计算机启动固件(Fireware),需要硬件(通常为主板)支持,相互代替的,其中 UEFI 是比较新的方式。

  • BIOS 经典的启动固件,会调用磁盘的 MBR,然后由 MBR 中的 loader 继续加载操作系统。
  • UEFI UEFI 用来代替 BIOS,并克服 BIOS 的缺点,大多数的 UEFI 固件会提供兼容 BIOS 的启动方式。

MBR vs GPT 描述:MBR 与 GPT 用于存储硬盘的分区信息,是不同的硬盘分区表类型

  • MBR MBR 表示 MBR 分区表,MBR 分区表在硬盘开头处存放了特殊的启动分区,称为 MBR(Master Boot Record,主启动记录),包含 Boot Loader 和硬盘逻辑分区。MBR 支持最大约2T的硬盘,最多能划分4个主分区,更多分区需要使用拓展分区实现。 (MBR在行文中可以表示 MBR 分区表和主启动记录两个意思,注意甄别。)
  • GPT GPT 表示 GUID(Globally Unique Identifier) 分区表,是 UEFI 规范的一部分,用于替换 MBR 的分区方式。GPT 没有分区数和分区大小限制。

简单描述磁盘发展史 Wikipedia 上有许多关于磁盘的资料,在磁盘分区上,我猜测的发展脉络是这样的:

  • 1.磁盘跟内存一样直接物理寻址去访问数据;
  • 2.为了方便,建立数据 Index,有了 File System;
  • 3.需要多个分区,搞出了 Partition Tabel。

注意事项:

  • (1) 磁盘分区表类型与磁盘文件系统类型不是同一个事物,前者是比如指代 MBR/GPT 分区类型。后者指代NTFS;
  • (2) BIOS/UEFI 跟 MBR/GPT 是不同层级的,BIOS/UEFI 是 Fireware,MBR/GPT 是分区表。
  • (3) Windows 通常会要求 UEFI 的启动方式使用 GPT,不然不给继续安装。推荐的使用方式: BIOS + MBR 或 UEFI + GPT:
0x01 设置传统与UEFI模式

描述:我们需要进入BIOS或者主板启动进行设置:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#老机器引导配置 (不启动UEFI)
Fast Boot : Enabled
Launch CSM : Disabled

#新机器(启用UEFIUEFI/Legacy Boot: UEFI BIOS
SECURE BOOT :Disabled  #关闭才能从U盘启动,Windows 8 中增加了一个新的安全功能,Secure Boot内置于UEFI BIOS,用来对抗感染MBRBIOS的恶意软件
#Windows 8 缺省将使用Secure Boot,在启动过程中,任何要加载的模块必须签名(强制的)UEFI固件会进行验证, 没有签名或者无法验证的,将不会加载。

#其他方式
比如在Windows8以上可能需要通过Windows启动选项菜单访问UEFI设置屏幕,而不是在计算机启动时按下某个键;

WeiyiGeek.UEFI

Auto(自动)/Both:自动按照启动设备列表中的顺序启动优先采用UEFI方式; UEFI only(仅UEFI):只选择具备UEFI启动条件的设备启动全新的启动模式 Legacy only(仅Legacy):只选择具备Legacy启动条件的设备启动最传统的模式 CSM选项:兼容模块专为兼容只能在legacy模式下工作的设备以及不支持或不能完全支持UEFI的操作系统而设置(老显卡、老设备)

传统BIOS模式启动引导修复:

  • NTbootAutoFix引导修复工具

流行UEFI模式启动引导修复:(需要进入UEFI模式的PE)

  • UEFix(UEFI 引导修复)
  • BOOTICE 编辑器(注意需先挂载:ESP分区)
  • Linux 系统 UEFI 编辑工具 efibootmgr

传统BIOS引导模式改为UEFI引导模式并修复流程

0.对已有磁盘进行调整分区大小,将磁盘的两端各留1GB的空闲空间;

1.转换该磁盘的分区表类型为GUID格式并且保存

2.选择前面的1GB的空闲分区,右键再选择”建立ESP(300MB)/MSR分区”,并且格式化分区;

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
- ESP分区(UEFI System Partition):用于才有UEFI BIOS的电脑系统来启动操作系统;分区内存存放 `引导管理程序,驱动程序,系统维护工具等等`
- MSR分区(微软保留分区)是GPT磁盘上用于保留空间以备用的分区;例如在将磁盘转换成为冬天磁盘时候会采用这些空间;

3.给ESP分区分配盘符,然后打开UEFI的 引导修复文件;选择刚刚分配的ESP分区的盘符,然后在选择”开始修复”,选择Window目录

注意事项:

  • 尽量不要选择自动模式,因为在确定自己的启动方式后,安装系统所用的U盘,甚至硬盘引导都要配套
  • VMware设置客户端操作系统 版本可以影响引导启动: 虚拟机设置 -> 常规 - > 选择客户端操作系统
  • VMware 修改固件类型(支持UEFI):虚拟机设置 -> 选项 -> 高级 -> 固件类型进行选择

0x02 设置U盘引导

Step1.下载PE工具箱并生成引导ISO文件:

WeiyiGeek.生成PE引导箱

Step2.采用软媒魔方得USB引导制作工具:

WeiyiGeek.多PE系统引导


0X03 引导修复

UEFI引导基本原理:

efi文件结构

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#注意需要先挂载ESP分区
efi\boot\bootx64.efi
efi\microsoft\boot\bcd

efi启动过程 :UEFI-BIOS启动时候自动查找硬盘下ESP分区的bootx64.efi,然后又bootx64.efi引导下的BCD文件,由BCD引导指定系统文件c:\windows\system32\winload.efi

(1)采用BCDboot自动修复:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#(1)指定esp分区修复环境为64位8PE,bios/uefi启动进入下都可以
Step1.启动64位8PE,并用esp分区挂载器或diskgenuis挂载esp分区
Step2.打开cmd命令行,输入以下命令并运行
$bcdboot c:\windows /s o: /f uefi /l zh-cn
# 其中:c:\windows  硬盘系统目录,根据实际情况修改
# /s o:     指定esp分区所在磁盘,根据实际情况修改
# /f uefi   指定启动方式为uefi
# /l zh-cn  指定uefi启动界面语言为简体中文
# 注:64位7PE不带/s参数,故7PE不支持bios启动下修复


#(2)不指定esp分区修复
#\环境为647或8PE,只有uefi启动进入PE才可以不用挂载esp分区,直接在cmd命令行下执行:
bcdboot c:\windows /l zh-cn
# 其中 c:\windows  硬盘系统目录,根据实际情况修改
# /l zh-cn  指定uefi启动界面语言为简体中文
# 注:在8PE中我们也可以在uefi启动进入pe后,挂载esp分区用方法

(2)采用BOOTICE进行UEFI修复 Step1.打开diskgenius软件有没有这两个分区:ESP和MSR如果没有需要建立并进行挂载; Step2.打开BOOTICE引导管理,1.选择:BCD编辑2.点:其它BCD文件3.点引号内“…”打开 Step3.找到ESP分区盘符efi>microsoft>boot>BCD打开BCD Step4.找到后找智能编辑,如果没有启动项就需要添加新建引导保存当前系统设置,如果有则跳过

WeiyiGeek.智能编辑

Step5.设置启动设备、属性等,启动分区就是系统安装的分区;

Step6.UEFI再点修改启动顺序:

WeiyiGeek.UEFI

  • 1.点:Windows boot manager(这个就是Windows启动项)。
  • 2.启动分区:选择ESP盘符。
  • 3.启动文件:\EFI\Microsoft\Boot\bootmgfw.efi,如果不是,把这串路径复制到红框3内。
  • 4.点:保存当前启动设置,最好把“下一次启动该项”打勾。

WeiyiGeek.bootManager

补充:uefi添加修复启动项设置完毕,如果是双系统需要添加启动项(安装上述即可),在修复UEFI的时候必须进入UEFI模式;

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
控制启动管理器: bcdedit  
主启动代码更新: bootsect  
启动文件修复:bcdboot

其它问题:

  • 1.手工运行ghost并不会修复esp分区
  • 2.用老大们的一键还原,现在慢慢加上了还原后esp引导修复功能,如实测深山的一键还原就自带esp分区uefi引导修复
  • 3.用微软原版系统光盘安装或PE下安装,当然都会自动修复esp引导。
0x0n 补充参考

推荐工具:

注意WePE安装至开机启动项详细规格:http://www.wepe.com.cn/learnmore.html

  • Legacy启动时:可安装到32和64位系统开机启动项
  • EFI启动时:只可安装到64位系统开机启动项,支持PE密码最长16位
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-07-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
3AZ比2AZ多了什么?关键是实现免人工切换
前几天腾讯的技术开放日不知道有没有小伙伴看过,这次 TechoDay 的命题作文,是全方位、多角度地分享「信息系统迁移难点和解法」。
腾讯专有云
2023/04/03
4K0
3AZ比2AZ多了什么?关键是实现免人工切换
运维平台第5期:业务永续
在上一期《数据掘金者》中,主要介绍的是有别于传统日志的腾讯专有云日志平台。本期给大家带来是专有云中不可或缺的保险机制——容灾管理系统。
腾讯专有云
2022/06/24
9800
运维平台第5期:业务永续
如何设计高可用的云业务架构?
容错(fault tolerance)指的是, 单个组件发生故障时,业务还能继续运行。
binwenli
2019/12/13
2.6K1
如何设计高可用的云业务架构?
跨数据中心下的 Kafka 高可用架构分析
导语 本文介绍了 Kafka 跨数据中心的两种部署方式,简要分析两种方式下的不同架构以及优缺点,对这些架构可能碰到的问题也提供了一些解决思路;同时也说明了 Kafka 跨数据中心部署的社区解决方案和商业化解决方案。 背景 Kafka 作为世界上最流行的消息中间件之一,一般是客户数据链路中的核心组件,高可用性是客户很关注的因素。近期在对接云上客户时发现,客户对 Kafka 的高可用也有需求,行业架构师也想了解 Kafka 高可用的方案细节;有些客户是需要云上 Kafka 的高可用能力,有些客户需要 IDC
腾讯云中间件团队
2023/04/28
2K0
跨数据中心下的 Kafka 高可用架构分析
微服务高可用容灾架构设计
相对于过去单体或 SOA 架构,建设微服务架构所依赖的组件发生了改变,因此分析与设计高可用容灾架构方案的思路也随之改变,本文对微服务架构落地过程中的几种常见容灾高可用方案展开分析。
腾讯云中间件团队
2023/09/09
1.3K0
微服务高可用容灾架构设计
腾讯云高可用网络的修炼之道
当他睡眼惺忪、手拿红牛、嘴刁香烟迈着沉重的步伐从某网络核心机房走出来的时候,除了看门大爷简短问候之外,也只有刚刚过去的这个黑夜才真正懂得刚刚发生了什么,在外人眼里,这个夜晚再正常不过,和往常一样,刷刷微博、看看抖音,逛逛购物网站,即便是前一晚上有某些人觉得打开购物网站的页面有点卡慢,他们也可能不会放在心上,然而正是因为这样一个不一样的网络体验,网络工程师们已经是废寝忘食,鏖战了整整一夜,来修复引发这个网络卡慢的bug,在外人眼里一觉醒来,看似波澜不惊,但有时实则是暗流涌动;
abelbai
2020/10/31
12.4K2
腾讯云高可用网络的修炼之道
【玩转腾讯云】如何构建云端高可用架构!
作者介绍 万守兵:腾讯云行业架构师,对云上双活架构、迁移方案有比较深的了解,现主要负责腾讯云泛互行业TOP级客户的解决方案架构工作。  高可用挑战  1.  高可用挑战:时间要求 2.   高可用挑战:各种不稳定的原因  常见事故及问题归类如下:  互联网通用架构和分层  典型互联网架构分层设计如下: 系统正交分解如下:  分类      服务治理         目标     技术      架构     监控层外层客户端SLA、攻防/扫描/审计  CDN合理/稳定
云存储
2020/07/31
2.6K0
腾讯云高可用和容灾解决方案
实现业务连续性的技术手段通常包括高可用性和灾备恢复两种,所以本文讲述的是在腾讯云上实现业务连续性的解决方案。
聊high云
2018/03/13
12.2K0
腾讯云高可用和容灾解决方案
使用腾讯云云主机(CVM)分散置放群组实现业务高可用部署
在业务系统上云的过程中,业务部署的高可用和容灾是一个要考虑的关键因素。如今很多系统都采用分布式的架构,从架构层面避免单点故障。分布式系统中,任意一个节点故障,其他节点可以快速接管业务,避免整个业务系统宕机。 这就对IaaS层资源提出了要求,即单节点故障,不影响其他节点。 由于公有云是一个多租户的环境,一台物理机上会运行多个虚拟机,如果分布式系统的多个虚拟机落到了同一台物理机上,当物理机发生故障时,多个分布式节点同时故障,就有可能造成整个系统宕机。 那么在公有云的IaaS层,如何才能保证分布式系统部署的高可用呢? 使用腾讯云的分散置放群组可以解决这个问题。
杨泽华
2019/06/14
10.7K0
如何设计和实现高可用的MySQL
王甲坤,腾讯高级工程师、腾讯云关系型数据库MySQL负责人,拥有多年客户端、数据库研发经验。在IOS客户端、MySQL、PostgreSQL、SQL Server等产品有丰富的研发和产品策划经验。
腾讯云数据库 TencentDB
2018/11/06
12K1
腾讯专有云荣获《2023年信息通信领域安全生产优秀成果》一等奖
11月13日,中国信息通信研究院组织的全国5G网络运行安全能力提升专项行动工作交流会在南京召开。其中在广东省通信管理局的指导推荐下,腾讯专有云《基于AZ内与跨AZ故障演练的专有云服务风险隐患排查体系》获得《2023年信息通信领域安全生产优秀成果》一等奖,此为广东省唯一一个通信领域安全生产专项一等奖。
腾讯专有云
2023/11/23
3810
腾讯专有云荣获《2023年信息通信领域安全生产优秀成果》一等奖
【YashanDB技术干货】为何共享集群的高可用能力被频频称赞,它的机制有何不同?
本文是YashanDB共享集群系列文章第二篇文章,上一篇《自研一款共享集群数据库,有多难?》系统讲述了YashanDB共享集群自研架构,本文将深入解析YashanDB共享集群关键组件——高可用机制与核心技术。
qiaoyikefu
2025/01/09
1000
【YashanDB技术干货】为何共享集群的高可用能力被频频称赞,它的机制有何不同?
高可用系统建设的一些思考
在参与公司几个多数据中心项目的容灾架构设计后,积累了一些高可用和多数据中心容灾的一些思考,总结和分享出来希望一起和大家学习。
机械视角
2022/05/18
8390
简述异地多活方案以及腾讯云实践
为了保障系统可用性, 我们通常会为了应对故障将组件或数据做冗余。常见的类型包括: 变更故障、硬件故障、断电断网、自然灾害, 发生的频率一次降低。
CPT-leobhao
2022/08/29
3.2K0
首批!腾讯专有云TCE和TCS通过信通院容灾认证
近日,腾讯专有云TCE和TCS 首批通过了中国信息通信研究院(以下简称信通院)《专有云容灾技术能力要求》,从基础设施能力、架构容灾能力、平台容灾能力三大类13子项88细项100%满足监管机构对专有云容灾的技术能力要求。TCE和TCS的容灾能力达到业界领先水平。
腾讯专有云
2024/05/22
1K0
首批!腾讯专有云TCE和TCS通过信通院容灾认证
王甲坤:如何设计和实现高可用的MySQL
下面开始我们今天的主要内容,今天主要是通过什么、为什么、怎么做,这条思路跟大家呈现MySQL的高可用。
腾讯云开发者社区技术沙龙
2018/11/05
1.5K0
金融核心系统迁移,腾讯云有何「解题思路」?
2019年1月,CDH 背后的公司 Cloudera 宣布与 Hortonworks(一家围绕着大数据平台去做发行版的公司)合并,形成了新的 Cloudera 公司。 两家公司合并之后,迅速对产品进行了整合推出了新一代产品——CDP,同时也宣布在2021年底结束对 CDH6 的服务支持。 这给国内企业敲醒警钟,要将以往使用的 CDH 大数据平台进行全面的迁移。 而时间拉到2021年12月29日,距离元旦仅三天,央行发布的一纸公文——《金融大数据平台总体技术要求》,在金融圈里炸开了锅。 以前的文件可能是从战略
腾讯专有云
2023/04/03
2K0
金融核心系统迁移,腾讯云有何「解题思路」?
从单一到多活,麦当劳中国的数据库架构迁移实战
过去十余年,互联网行业通过 IT 基础设施的革新,实现了从单一数据库到多活数据库架构的跨越,显著提升了业务的高可用性和容灾能力。如今,餐饮行业也沿着这一路径,开始向多活数据库架构迁移。
深度学习与Python
2025/04/18
1290
从单一到多活,麦当劳中国的数据库架构迁移实战
首届云上广交会存储服务架构与实践
疫情压力下,广交会63年来首次整体搬上“云端”,首次整体搬上“云端”的广交会运行平稳,服务了217个国家和地区的采购商观展。作为本届广交会的技术服务商,腾讯为广交会网上举办提供整体技术支持、平台研发服务与云资源支撑。
hustxiong
2020/08/10
4.2K0
【玩转腾讯云】如何构建云端高可用架构
一、高可用的挑战 1、高可用挑战-要求 image.png 2、高可用挑战-各种不稳定的来源 常见事故及问题归类如下: image.png 二、互联网通用架构和分层 典型互联网架构分层设计如下: image.png 系统正交分解如下: 服务治理目标 技术架构 监控层 外层 客户端SLA 攻防/扫描/审计 CDN合理/稳定 DNS合理/稳定 流量峰值 CDN DNSPOD/Ip直连 高防 客户端监控 CDN监控 DNSPOD监控 安全监控 接入层 异地多活 服务
Vicwan
2020/04/16
4.1K2
推荐阅读
相关推荐
3AZ比2AZ多了什么?关键是实现免人工切换
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档