Archlinux安装UEFI Grub

原创 2017年08月27日 03:45:07

最近换了电脑,以前的老电脑使用的是旧BIOS架构启动,新电脑都变成了新的BIOS架构即UEFI启动(UEFI是新BIOS架构,自从UEFI出来之后,老的BIOS架构便被称为legacy),在安装grub时比之前稍微麻烦了一点。

准备

参考教程:https://wiki.archlinux.org/index.php/GRUB
虽然Arch的wiki有简体中文的翻译,但是一定要看英文的!!!中文的翻译不能与时俱进,而且很多地方都翻译的不好,甚至翻译错了……本页面就是一个很典型的按照中文装系统会装错的例子……

先简单知道几个必要的名词:

  • UEFI: Unified Extensible Firmware Interface,统一可扩展固件界面,提供了启动操作系统的标准环境。
  • ESP: EFI System Partition,EFI分区。
  • GPT: GUID Partition Table,GUID分区表,是UEFI标准的一部分,使用GUID/UUID来标识分区等。

在磁盘上安装grub,就是将此磁盘作为启动盘。想使用EFI启动,一定要在这一块磁盘上有EFI的系统分区(EFI System Partition, 即ESP)。因此,找到这个分区就是其中的关键。

安装步骤

  • 安装grubefibootmgr
pacman -S grub efibootmgr
  • 寻找ESP
    非常重要,一定要找到自己想要安装grub的磁盘的EFI分区,即ESP。对于双系统来说,基本上这个分区是已经存在的。对于我来说,Windows10装在了sda盘上,因此可以使用:
parted /dev/sda print

查看sda盘的分区信息,可以看到输出有Partition Table: gpt字段,而且/dev/sda1flag字段下有boot标记,可以确定这就是EFI分区。另外,根据wiki描述,这个分区一般都是fat32/vfat格式,vfat就是Windows下常说的fat64

  • 安装grub
    安装grub的时候一定要将grub安装在刚刚找到的EFI分区上。
    先挂载EFI分区:
mkdir /boot/myefi
mount /dev/sda1 /boot/myefi

安装(64位CPU架构):

grub-install --target=x86_64-efi --efi-directory=/boot/myefi --bootloader-id=pikachu

--bootloader-id参数可以随便设置,比如pikachu,装完之后就可以在/boot/myefi/EFI/下找到pikachu文件夹,里面有生成的启动文件。

  • 生成grub配置:
    安装好之后,grub还需要被配置一下才能生效,要不然还是不能使用。对于双系统,还需要让grub找到机器上存在的Windows,以便在开机时选择想要进入的系统。
    为了检测其他系统,需要安装os-prober
pacman -S os-prober

自动配置grub

grub-mkconfig -o /boot/grub/grub.cfg
  • (可选)其他grub配置:
    如果还想让grub更漂亮,添加背景图片,或者修改一下启动顺序之类的,可以修改grub的配置文件,这个属于额外的操作,也比较简单。

遇到的问题

在安装grub的时候,系统报错:EFI variables are not supported on this system,重启电脑,果然安装失败,无法进入系统。只能再次通过Arch安装盘进入系统,进行问题修复。

解决方式

根据Arch论坛的一篇求助帖,发现需要在开机的设置选项里,将legacy的所有启用都关掉,只使用UEFI启动,才能成功。

对于我来讲,我发现虽然我已经在开机启动项里将启动方式设置为了UEFI,但是Boot->Legacy Option Roms仍然为Enabled,设置为Disabled

试了一下,确实好了。

原因

正如开篇所说,BIOS分为legacyUEFI两种。现在存在UEFI + legacy的模式,这是为了让某些不支持UEFI的电脑也能正常使用传统的BIOS引导模式启动,而我们此时是在安装EFI的启动方式,因此一旦设备是通过legacy模式启动的,就会报错“EFI变量不被系统支持”。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Archlinux 安装过程(UEFI+GRUB+GNOME)

为何使用 Archlinux 轻量简洁 没有帮你预先装好一大堆你可能不要用的东西(但也意味着你需要自己定制) 出色的pacman包管理器 在这种一片空白的系统上你可以快速提高自己的知识水平 相比gen...

Archlinux安裝指南(uefi+gpt模式)

Archlinux安裝指南(uefi+gpt)摘要:文章介绍了基于uefi+gpt模式下archlinux基本系统和图形界面的安装、一些基本的系统优化。Archlinux安裝指南uefigpt 系统安...

win10与archlinux(UEFI+GPT)双系统

win10安装 ------------------------------------------------------------------------ 原版win10安装这里不用多说。 我的...

GRUB,UEFI

—–最近三天为了给平板装Linux,看了好多UEFI和GRUB的东西,写在这里记录一下自己的理解。—–UEFI,和EFI是一个意思。和BIOS的作用是一样的,需要主板厂商支持。对于支持BIOS的主板来...

ArchLinux 中文安装指南

  • 2010-03-31 00:22
  • 440KB
  • 下载

Win10+Ubuntu双系统UEFI启动方式下GRUB消失直接进入Windows以及重装时grub-install致命错误解决方法

Win10+Ubuntu双系统UEFI启动方式下GRUB消失直接进入Windows以及重装时grub-install致命错误解决方法

ArchLinux安装指南_v1.0

  • 2017-06-16 12:31
  • 1.91MB
  • 下载

Archlinux的安装与配置

  • 2010-07-16 09:17
  • 17KB
  • 下载

Archlinux安装笔记

要安装arch linux,基本都需要参照Wiki中的内容,网上给的教程不一定正确,毕竟archlinux滚动更新,指不定什么时候又变了。 第一步、选择安装源: http://www.ar...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)