百度
360搜索
搜狗搜索

grub2怎么引导linux详细介绍

GRUB2(Grand Unified Bootloader 2)是广泛应用于 Linux 系统的启动加载器,下面为你详细介绍它引导 Linux 系统的步骤和原理。

基本原理

GRUB2 一般分三个阶段来引导 Linux 系统:

  • 阶段 1(MBR):GRUB2 的极小部分代码被安装在主引导记录(MBR)中,此部分代码的功能是找到并加载阶段 1.5 或者阶段 2。
  • 阶段 1.5:该阶段代码处于 MBR 之后的扇区,它能识别文件系统,这样 GRUB2 就能在文件系统里找到阶段 2 的文件。
  • 阶段 2:GRUB2 的主要程序,包含了菜单界面、配置文件读取等功能。它会读取 /boot/grub/grub.cfg 配置文件,从而显示启动菜单,让用户选择要启动的系统。

引导步骤

1. 安装 GRUB2

在安装 Linux 系统时,GRUB2 通常会自动安装到 MBR 或者 EFI 分区。要是你需要手动安装,可以使用如下命令:
bash

grub-install /dev/sda

/boot/grub/grub.cfg

2. 配置
/boot/grub/grub.cfg

grub.cfg 文件是 GRUB2 的主配置文件,不过通常不建议直接对其进行编辑,而是编辑 /etc/default/grub/etc/grub.d/ 目录下的脚本,然后再更新 grub.cfg

  • 编辑 /etc/default/grub

bash

  /etc/default/grub

你可以在此处修改默认的启动项、超时时间等参数。例如:
plaintext

GRUB_DEFAULT=0

GRUB_TIMEOUT=5

GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

GRUB_CMDLINE_LINUX=""

  • 更新 grub.cfg

bash

   /boot/grub/grub.cfg

3. 手动添加引导项

若你要手动添加一个引导项,可以在 /etc/grub.d/40_custom 文件中添加如下内容:
plaintext

menuentry "My Custom Linux" {

set root=(hd0,1) # 指定根分区

linux /vmlinuz-5.4.0-77-generic root=/dev/sda1 ro quiet splash # 指定内核文件和根分区

initrd /initrd.img-5.4.0-77-generic # 指定 initrd 文件

}

之后再更新 grub.cfg
bash

   /boot/grub/grub.cfg

引导过程

  1. BIOS 或者 UEFI 启动:计算机开机后,BIOS 或者 UEFI 会先进行硬件自检,然后查找启动设备,接着加载 MBR 或者 EFI 分区里的 GRUB2 代码。
  2. GRUB2 阶段 1 执行:MBR 中的 GRUB2 代码被加载并执行,它会找到并加载阶段 1.5 或者阶段 2。
  3. GRUB2 阶段 2 执行:阶段 2 代码被加载,读取 /boot/grub/grub.cfg 配置文件,显示启动菜单。
  4. 用户选择启动项:用户可以从启动菜单中选择要启动的系统,要是在超时时间内没有进行选择,就会启动默认的系统。
  5. 加载内核和 initrd:GRUB2 按照所选启动项的配置,加载内核文件和 initrd 文件。
  6. 启动 Linux 系统:内核被加载并初始化,initrd 文件提供了必要的驱动和工具,最终启动 Linux 系统。

通过上述步骤,GRUB2 就能成功引导 Linux 系统。

阅读更多 >>>  linux如何搭建web环境

网站数据信息

"grub2怎么引导linux"浏览人数已经达到24次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:grub2怎么引导linux的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!