跳转至

引导

英文:Boot Loader

概述

引导是计算机启动时,BIOS/UEFI用来寻找并启动操作系统的程序。通常情况下,引导文件为efi格式,并统一存储在ESP分区(一般来说是磁盘分区图最靠左的不大的FAT32分区)中。

一般ESP分区的结构

ESP目录结构可能因挂载点不同存在差异,请自行替换下方教程路径。

/boot
├── efi
│   ├── BOOT  # Windows的引导
│   │   ├── BOOTIA32.EFI
│   │   ├── BOOTX64.EFI
│   │   ├── fbia32.efi
│   │   └── fbx64.efi
│   └── fedora  # Linux的引导
│       ├── BOOTIA32.CSV
│       ├── bootuuid.cfg
│       ├── BOOTX64.CSV
│       ├── grub.cfg
│       ├── grubia32.efi
│       ├── grubx64.efi
│       ├── mmia32.efi
│       ├── mmx64.efi
│       ├── shim.efi
│       ├── shimia32.efi
│       └── shimx64.efi
└── grub # GRUB配置,部分发行版为grub2
     ├── bootuuid.cfg
     ├── grub.cfg
     └── grubenv

引导器

GRUB

一般来说,多数Linux发行版预装GRUB作为引导器。它非常强大和灵活,能够理解文件系统和内核可执行文件格式。

美化

GNOME-LOOK.ORGGithub上均有丰富多样的GRUB主题。

一些主题拥有一键安装脚本,您也可以手动安装——在下载好压缩包后,您需要将其解压到文件夹中,并放置到GRUB的主题目录中。大多数发行版的目录为/boot/grub/themes,部分发行版为/boot/grub2/themes或其他目录。

之后,您需要编辑GRUB配置文件(sudo nano /etc/default/grub),找到以#GRUB_THEME开头的一行,将其替换为:

GRUB_THEME=/boot/grub/themes/主题文件夹/theme.txt
# 一般为theme.txt,部分主题可能不同

最后,运行sudo upgrade-grub来更新GRUB配置即可。

rEFInd

rEFInd是作为已停止维护的rEFIt项目的分支而诞生,最初旨在解决非Mac电脑上的UEFI启动问题。它的最大亮点是自动检测能力,能自动识别出系统里的Windows、Linux、macOS等各种操作系统。由于其出色的外观和易用性,它在需要管理复杂多系统启动的用户中非常受欢迎。

适用性

rEFInd仅支持UEFI。

安装

您需要通过您的包管理器安装refind (Debian/Arch) / rEFInd (Fedora,注意大小写)。

在安装软件包之后,您需要运行sudo refind-install来将其安装到ESP。

安装之后,您需要关闭或手动配置安全启动来保证引导器正常运行。以下我们会示范如何使用shim配置。

首先,您需要通过您的包管理器安装shim-signed

大部分发行版已经预置了签名过的shimx64.efi,您只需要替换以下指令--shim后的路径即可。

sudo refind install --shim /boot/efi/一般为发行版名称/shimx64.efi
# EFI目录可能存在差异
# 或者,您也可以使用/usr/share/shim-signed/shimx64.efi

重启电脑后,您会进入MOK Manager界面。

Access Denied

MOK management

请选择OK=>Enroll hash from disk,找到refind_x64.efi,OK=>Reboot重启即可。

更多选项,建议您参考Arch Wiki

警告

我们不建议您在安装rEFInd之后贸然卸载GRUB。rEFInd的识别能力有限,若您在安装系统时选择单独分区/boot可能无法直接通过vmlinuz绕过GRUB启动

在部分发行版内,GRUB可能受包管理器保护。

卸载GRUB

此处以Fedora为例。要卸载GRUB,首先需要移除系统对GRUB包的保护。

sudo rm /etc/dnf/protected.d/{shim,grub2*}.conf

之后,移除GRUB。

sudo dnf remove grub* shim*

美化

rEFInd的主题大多于Github上发布。

大多数主题拥有一键安装脚本,并提供了手动安装教程。此处只讲解通用的手动安装方法。

首先,请在/boot/efi/refind下创建themes文件夹,并将主题压缩包解压到一个文件夹后放置于themes下。

之后,请编辑/boot/efi/refind/refind.conf,添加include themes/主题文件夹名/theme.conf行,并删除其他类似主题配置行。

要编辑主题的各项自定义选项,请编辑主题文件夹下的theme.conf