使用第三方工具refind进行美化引导
前言
refind简介
refind官网:http://www.rodsbooks.com/refind/getting.html
UEFI引导原理
UEFI启动后:
- 它找到每个磁盘上的每个ESP分区
- 在ESP分区内找到并启动第一个有效的启动文件 (通常是EFI/boot/bootx64.efi)
- 这个这文件会读取启动菜单并启动菜单上的第一个系统
- 第一个不能启动便尝试第二个,以此类推,直到成功或失败
以上流程是固定的,我们无法改变。要想掌控自己的系统,关键就在于【启动菜单】
启动菜单 - bootx64.efi:
启动菜单包含3种有用信息
- 启动项的名称
- 启动项指向的文件位置
- 启动项的顺序
编辑这三种信息就能自由的控制启动情况了
◆ 启动菜单不是一个文本文档,你想找出它的位置然后用文本编辑器打开修改是不行的
◆ 但是各种操作系统都有自己的工具:Linux上有Efibootmgr, Windows上有BOOTICE和EasyUEFI
◆ 当然,过去常用的EasyBCD可以删除项目和改变菜单顺序,但是不能创建UEFI启动项。
◆ 还有,进入BIOS的UEFI固件设置也能修改启动顺序。
启动文件 - *.efi
- 启动菜单的第2个有用信息。
- 每个菜单分别指向一个扩展名为efi的文件的
- 菜单负责启动这些文件
- 这些文件负责启动自己的系统
知道这个流程后,以上任何一步若出错或失败,我们都可以手动操作修复问题。
安装
方法一:Ubuntu下安装-最简单
在ubuntu下直接输入指令即可
$ sudo apt-add-repository ppa:rodsmith / refind
$ sudo apt-get update
$ sudo apt-get install refind
方法二:Windows下安装
1.下载安装包zip文件
- 官网上的 介绍,下载,安装,换主题等得说得很清楚,下载文件有多种版本,可以按需下载。
- 第一个是通用性比较好的,教程就用它。
2.使用DG将解压后的refind文件夹放入ESP分区
- 将refind.conf-sample的-sample后缀去掉。
- refind内目录保留
drivers_x64
目录和icons
目录即可,其他文件保留refind_x64.efi
即可
3.使用BOOTICE或者EasyUEFI,将ESP分区的refind.efi添加至主引导记录。
4.更改refind为第一启动项即可。
5.进行一些微调:
在refind.conf中进行配置
设置超时:timeout 20
更换与定制refind主题
这里是软件作者搜集的一些主题:http://www.rodsbooks.com/refind/themes.html
放入主题文件
- 使用DG在refind目录下新建 theme目录,将主题解压文件拖入目录
- 目录内文件均可替换为自己喜欢的素材
- 在refind.conf中引入主题目录下的配置文件即可(639行)
include themes/rEFInd-minimal/theme.conf
这里有一个骚操作:一般refind不能区分win7和win10的图标,可以这两个系统的Logo直接P到refind主题文件的背景上,然后将refind将要使用的windows图标替换透明,即可
去除refind界面多余启动图标
踩坑
不是也不能使用EasyUEFI删除系统引导!
不仅没有用,而且会让Win10丢失引导造成无法正常开机。
方法一:直接进入经典refind界面按delete删除
- 如果为refind安装了主题,使用 DiskGenius (下称DG)进入ESP分区,重命名主题目录为随意名称,起到关闭第三方主题的作用。
- 重启至refind,按delete键即可隐藏启动项。
- 再进入系统将重命名文件夹改回原名称
方法二:在refind配置文件中排除启动项efi目录
确定efi文件位置(如果知道文件位置可省掉此步)
- 如果为refind安装了主题,使用DG进入ESP分区,重命名主题目录为随意名称。
- 重启至refind,左右调节光标,使用手机拍下efi所在目录。
- 再进入系统将重命名文件夹改回原名称
修改refind.conf配置文件
- 使用DG进入ESP分区,将refind目录下的refind.conf复制到桌面,使用记事本工具打开。
- 使用搜索功能找到
dont_scan_dirs
(373行左右),在后面加一行
#dont_scan_dirs ESP:/EFI/boot,EFI/Dell,EFI/memtest86
dont_scan_dirs ESP:/EFI/ubuntu,EFI/Boot
# 将上一行改为需要屏蔽的目录名称即可
# Files that should NOT be included as EFI boot loaders (on the