解决CentOS7,EFI+GPT卡在grub,无法正常启动的故障

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决CentOS7,EFI+GPT卡在grub,无法正常启动的故障相关的知识,希望对你有一定的参考价值。

Linux系统故障,Grub丢失。开启启动后,直接进入grub>无法进入系统。
只需要删除/boot/grub2/grub.cfg即可。 通过传统的删除硬盘的前446字节对GPT分区无效。

一、查看分区
技术图片

二、 临时修复启动

insmod xfs
set root=‘hd0,gpt2‘                      #这里指定的应该是/boot分区,这个分区下应该有 vmlinuz-0-rescue以及initramfs-0-rescue文件。
linuxefi /vmlinuz-0-rescue-9d20b497512743d8befa1a3151a40d24 root=/dev/mapper/centos-root            
                                                    #因为有独立的boot分区,所以linuxefi 后面可以直接跟/vmlinuz,该文件存放位于/boot下
initrdefi /initramfs-0-rescue-9d20b497512743d8befa1a3151a40d24.img
boot

技术图片

三、 启动后,进入系统,安装grub
[root@centos2 ~]# grub2-install /dev/sda
grub2-install:错误: /usr/lib/grub/x86_64-efi/modinfo.sh doesn‘t exist. Please specify --target or --directory.

四、 解决上述报错
[root@centos2 ~]# mount #查看光盘挂载
/dev/sr0 on /run/media/root/CentOS 7 x86_64 type iso9660 (ro,nosuid,nodev,relatime,uid=0,gid=0,iocharset=utf8,mode=0400,dmode=0500,uhelper=udisks2)
[root@centos2 ~]# cd /run/media/root/CentOS 7 x86_64/

[root@centos2 CentOS 7 x86_64]# rpm -ivh Packages/grub2-efi-x64-2.02-0.80.el7.centos.x86_64.rpm
错误:依赖检测失败:
grub2-common = 1:2.02-0.80.el7.centos 被 grub2-efi-x64-1:2.02-0.80.el7.centos.x86_64 需要
grub2-tools = 1:2.02-0.80.el7.centos 被 grub2-efi-x64-1:2.02-0.80.el7.centos.x86_64 需要
grub2-tools-extra = 1:2.02-0.80.el7.centos 被 grub2-efi-x64-1:2.02-0.80.el7.centos.x86_64 需要

所以改用yum
[root@centos2 CentOS 7 x86_64]# yum -y install grub2-efi-x64-modules.noarch

[root@centos2 CentOS 7 x86_64]# grub2-install /dev/sda
Installing for x86_64-efi platform.
Installation finished. No error reported.

[root@centos2 grub2]# pwd
/boot/grub2
[root@centos2 grub2]# ls
fonts grub.cfg grubenv grubenv.rpmsave locale x86_64-efi

以上是关于解决CentOS7,EFI+GPT卡在grub,无法正常启动的故障的主要内容,如果未能解决你的问题,请参考以下文章

Grub 找不到 grub.cfg 文件——卡在 GRUB 命令行 [关闭]

如何保护 Linux 的加载阶段 - MBR、GPT、EFI 分区和 GRUB 不被修改? [关闭]

grub2添加gpt+efi的win7引导项

MAC安装Win10出现”在efi系统上,windows只能安装到gpt分区”问题的解决

centos7删除开机动画及修改启动菜单

bios里只有有UEFI选项没有EFI选项