GRUB 2是许多发行版的缺省efi模式引导加载程序。

grub2 与 grub 的区别

官方手册:https://www.gnu.org/software/grub/manual/grub/html_node/Changes-from-GRUB-Legacy.html#Changes-from-GRUB-Legacy

几个主要的区别:

1.配置文件的名称改变了。在grub中,配置文件为grub.conf或menu.lst(grub.conf的一个软链接),在grub2中改名为grub.cfg。

2.grub2增添了许多语法,更接近于脚本语言了,例如支持变量、条件判断、循环。

3.grub2使用img文件,不再使用grub中的stage1、stage1.5和stage2。

grub2 引导操作系统的方式

官方手册:https://www.gnu.org/software/grub/manual/grub/html_node/General-boot-methods.html#General-boot-methods

直接引导:(direct-load)直接通过默认的grub2 boot loader来引导写在默认配置文件中的操作系统

链式引导:(chain-load)使用默认grub2 boot loader链式引导另一个boot loader,该boot loader将引导对应的操作系统

rpm -qa | grep grub2

grub2-tools-2.02-73.oe1.aarch64

grub2-efi-aa64-2.02-73.oe1.aarch64

grub2-common-2.02-73.oe1.noarch

rpm -qc grub2-tools-2.02-73.oe1.aarch64

/etc/default/grub

/etc/grub.d/00_header

/etc/grub.d/01_menu_auto_hide

/etc/grub.d/01_users

/etc/grub.d/10_linux

/etc/grub.d/20_linux_xen

/etc/grub.d/20_ppc_terminfo

/etc/grub.d/30_os-prober

/etc/grub.d/30_uefi-firmware

/etc/grub.d/40_custom

/etc/grub.d/41_custom

rpm -ql grub2-efi-aa64-2.02-73.oe1.aarch64

/boot/efi/EFI/openEuler/fonts

/boot/efi/EFI/openEuler/grub.cfg

/boot/efi/EFI/openEuler/grubaa64.efi

/boot/efi/EFI/openEuler/grubenv

/boot/grub2/grubenv

/boot/loader/entries

/etc/grub2-efi.cfg

grubaa64.efi 这个是操作系统的引导文件

tree /boot/efi/EFI/

/boot/efi/EFI/

├── BOOT

│   ├── BOOTAA64.EFI

│   ├── fbaa64.efi

│   └── mmaa64.efi

└── openEuler

├── BOOTAA64.CSV

├── fbaa64.efi

├── fonts

├── grub.cfg

├── grubaa64.efi

├── grubenv

├── mmaa64.efi

├── shimaa64.efi

└── shimaa64.hash

EFI system partition(ESP)

EFI系统分区(也称为ESP)是一个操作系统独立分区,作为EFI引导加载程序、应用程序和驱动程序的存储空间,由UEFI固件启动。UEFI引导时必须配置。

fdisk -l /dev/sdb

Disk /dev/sdb: 447.13 GiB, 480103981056 bytes, 937703088 sectors

Disk model: SAMSUNG MZ7LH480

Units: sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 4096 bytes

I/O size (minimum/optimal): 4096 bytes / 4096 bytes

Disklabel type: gpt

Disk identifier: 4FA243ED-88DE-4AFA-A008-E327FAB227D5

Device Start End Sectors Size Type

/dev/sdb1 2048 411647 409600 200M EFI System

/dev/sdb2 411648 2508799 2097152 1G Linux filesystem

/dev/sdb3 2508800 937701375 935192576 446G Linux LVM

The disk's partition table: it indicates Disklabel type: gpt if the partition table is GPT or Disklabel type: dos if it is MBR.

The list of partitions on the disk: Look for the EFI system partition in the list, it is usually at least 100 MiB in size and has the type EFI System or EFI (FAT-12/16/32). To confirm this is the ESP, mount it and check whether it contains a directory named EFI, if it does this is definitely the ESP.

efibootmgr 管理 UEFI 启动项

BootCurrent: 0003

Timeout: 10 seconds

BootOrder: 0003,0002,0004,0006,0008,000A,000C,000E,0010,0001,0000

Boot0000* BootManagerMenuApp

Boot0001* ByoUiApp

Boot0002* UEFI PXEv4 (MAC:5CE88331C870)

Boot0003* openEuler

Boot0004* UEFI PXEv4 (MAC:5CE88331C871)

Boot0006* UEFI PXEv4 (MAC:5CE88331C872)

Boot0008* UEFI PXEv4 (MAC:5CE88331C873)

Boot000A* UEFI PXEv4 (MAC:5CE88331C874)

Boot000C* UEFI PXEv4 (MAC:5CE88331C875)

Boot000E* UEFI PXEv4 (MAC:5CE88331C876)

Boot0010* UEFI PXEv4 (MAC:5CE88331C877)

Linux 概念:grub2的更多相关文章

  1. 【转】Linux 概念架构的理解

    转:http://mp.weixin.qq.com/s?__biz=MzA3NDcyMTQyNQ==&mid=400583492&idx=1&sn=3b18c463dcc451 ...

  2. Linux 概念架构的理解

    摘要 Linux kernel 成功的两个原因: 架构设计支持大量的志愿开发者加入到开发过程中: 每个子系统,尤其是那些需要改进的,都支持很好的扩展性. 正是这两个原因使得 Linux kernel ...

  3. linux概念之/proc与/sys

    http://blog.chinaunix.net/uid-1835494-id-3070465.html  proc/x:1/sched http://bbs.chinaunix.net/threa ...

  4. linux概念之内存分析

    linux内存总结 分析样本[root@-comecs ~]# free total used free shared buffers cached Mem: -/+ buffers/cache: S ...

  5. linux概念之时间与时区

    http://www.cnblogs.com/liuyou/archive/2012/07/29/2614338.html Linux时间基准 以上我们了解了RTC(实时时钟.硬件时钟)和OS时钟(系 ...

  6. linux概念之分区与文件系统

    分区类型 [root@-shiyan dev]# fdisk /dev/sda WARNING: DOS-compatible mode is deprecated. It's strongly re ...

  7. linux概念之用户,组及权限

    Linux 是一个多用户.多任务的操作系统:我们应该了解单用户多任务和多用户多任务的概念 单用户多任务一个beinan用户,为了完成工作,执行了几个任务:当然beinan这个用户,其它的人还能以远程登 ...

  8. (转)Linux概念架构的理解

    英文原文:Conceptual Architecture of the Linux Kernel 摘要 Linux kernel成功的两个原因:(1)架构设计支持大量的志愿开发者加入到开发过程中:(2 ...

  9. Linux概念架构的理解

    摘要 Linux kernel成功的两个原因:(1)架构设计支持大量的志愿开发者加入到开发过程中:(2)每个子系统,尤其是那些需要改进的,都支持很好的扩展性.正式这两个原因使得Linux kernel ...

  10. Linux概念架构的理解(转)

    英文原文:Conceptual Architecture of the Linux Kernel 摘要 Linux kernel成功的两个原因:(1)架构设计支持大量的志愿开发者加入到开发过程中:(2 ...

随机推荐

  1. S3 对象重命名

    本文所述操作适用于兼容 S3 协议的所有存储框架,包括 AWS S3.Aliyun OSS.MinIO.Ceph 等. 不知为何,截止目前,S3 协议并不包含对象重命名的接口.如果有重命名对象的需求, ...

  2. react项目使用less样式,配置less

    create-react-app脚手架创建的项目有sass配置项,使用的时候只需要装包即可,下面是less使用的方法 由于 create-react-app 脚手架中并没有配置关于 less 文件的解 ...

  3. P2482 [SDOI2010] 猪国杀

    方法论 这是一道复杂的模拟题.由于游戏规则的条目很多,我们需要仔细考虑程序的组织.否则,在编写程序的过程中极容易陷入停滞的状态(不知道下一步应该怎么做),或在发现程序出问题时,难以快速定位到错误点,对 ...

  4. 2022-04-15:给定一个非负数组arr,学生依次坐在0~N-1位置,每个值表示学生的安静值, 如果在i位置安置插班生,那么i位置的安静值变成0,同时任何同学都会被影响到而减少安静值, 同学安静值

    2022-04-15:给定一个非负数组arr,学生依次坐在0~N-1位置,每个值表示学生的安静值, 如果在i位置安置插班生,那么i位置的安静值变成0,同时任何同学都会被影响到而减少安静值, 同学安静值 ...

  5. 2022-01-24:K 距离间隔重排字符串。 给你一个非空的字符串 s 和一个整数 k,你要将这个字符串中的字母进行重新排列,使得重排后的字符串中相同字母的位置间隔距离至少为 k。 所有输入的字符串

    2022-01-24:K 距离间隔重排字符串. 给你一个非空的字符串 s 和一个整数 k,你要将这个字符串中的字母进行重新排列,使得重排后的字符串中相同字母的位置间隔距离至少为 k. 所有输入的字符串 ...

  6. vue全家桶进阶之路11:计算属性

    Vue2 中的计算属性是指在组件中声明的计算属性,它们的值是根据其他数据计算得出的,并且会根据依赖数据的变化而自动更新.计算属性可以在模板中使用,与普通属性一样使用,但是它们具有以下优点: 缓存:计算 ...

  7. windows server 2012 2019启动 开机自动启动 项设置

    1.第一种方法:打开运行功能,运行shell:startup,打开管理员用户启动项目录.将想要设置成开机自启的程序快捷方式添加到其中即可,或者删除其中快捷方式即可取消开机自启.2.第二种方法:打开系统 ...

  8. ET介绍——CSharp协程

    什么是协程 说到协程,我们先了解什么是异步,异步简单说来就是,我要发起一个调用,但是这个被调用方(可能是其它线程,也可能是IO)出结果需要一段时间,我不想让这个调用阻塞住调用方的整个线程,因此传给被调 ...

  9. 【技术分享】万字长文图文并茂读懂高性能无锁 “B-Tree 改”:Bw-Tree

    [技术分享]万字长文图文并茂读懂高性能无锁 "B-Tree 改":Bw-Tree 原文链接: https://mp.weixin.qq.com/s/I5TphQP__tHn6JoP ...

  10. Tomcat处理http请求之源码分析

    本文将从请求获取与包装处理.请求传递给Container.Container处理请求流程,这3部分来讲述一次http穿梭之旅. 1 请求包装处理 tomcat组件Connector在启动的时候会监听端 ...