redhat8 rhel8 启动grub损坏修复

环境:redhat8.4 RHEL8.4

服务器:华为G560

问题描述:调整了/etc/default/grub文件,重新生成/boot/grub2/grub.cfg导致机器启动失败,直接进入了rescue模式

解决方案:

启动到如下界面

选择c进入grub命令界面

可以使用ls命令去查看驱动器的情况

  • (hd0) 是第一个硬盘。
  • (hd0,msdos1) 是第一个硬盘上的第一个分区。
  • (hd0,msdos2) 是第一个硬盘上的第二个分区。
  • (hd0,msdos3) 是第一个硬盘上的第三个分区。

一般来说,对于LVM结构磁盘,对应关系如下,这也是我的系统对应关系(这个结构需要根据自己系统情况仔细区分)

  • (hd0,msdos1) 是第一个硬盘上的第一个分区,对应/dev/sda1,也就是系统中文件系统/boot ,启动文件存储的分区 对应的是传统方式部署、启动的系统
  • (hd0,msdos2) 是第一个硬盘上的第二个分区,对应/dev/sda2,也就是系统中文件系统/boot/efi,对应的是UEFI方式部署、启动的系统
  • (hd0,msdos3) 是第一个硬盘上的第三个分区,对应/dev/sda3,也就是系统中其它文件系统,也就是根VG所在的分区

以上的对应关系也可以和同类系统对应

可以用命令详细查看磁盘内具体内容

现在清楚了这些内容,就开始

手动引导启动

首先让引导程序找到启动文件

grub> set root=(hd0,msdos1)

然后加载内核版本到根分区,我的根分区是在sda3里

  • 对于直接磁盘方式安装的话命令如下

grub> linux16 /vmlinuz-4.18.0-305.el8.x86_64 ro root=/dev/sda2

  • 对于LVM结构系统,命令如下

grub> linux16 /vmlinuz-4.18.0-305.el8.x86_64 ro root=/dev/mapper/vgrhel-lvroot

最后加载系统内核镜像

grub> initrd16 /initramfs-4.18.0-305.el8.x86_64.img

grub> boot

以上手工引导,并不能让下次系统能够正常启动。

配置自动启动:

先说明一点结论,千万不要手工编辑/etc/default/grub或者/etc/sysconfig/grub

因为我手工编辑了/etc/default/grub,所以执行如下步骤

  • 删除配置文件

rm /etc/default/grub

  • 重新安装软件包

yum reinstall grub2-tools

  • 重建 grub.cfg 文件以使更改生效

grub2-mkconfig -o /boot/grub2/grub.cfg

  • 重新安装 GRUB在 /boot/ 分区上恢复 GRUB

grub2-install /dev/sda

  • 验证

reboot

以上步骤基于BIOS安装的机器,基于UEFI安装的机器请参考https://docs.redhat.com/zh_hans/documentation/red_hat_enterprise_linux/8/html/managing_monitoring_and_updating_the_kernel/proc_resetting-grub_assembly_reinstalling-grub

相关内容

查看、配置grub使用如下命令:

grubby

还有其它情况的处理步骤,请参考:https://blog.csdn.net/Howei__/article/details/104537757 本文为实际操作后的记录

相关推荐
冷心笑看丽美人21 天前
SHELL脚本初体验(Linux网络服务器 22)
linux·服务器·shell·redhat
致奋斗的我们1 个月前
RHCE的学习(22)
linux·服务器·学习·shell·redhat·rhce·rhcsa
致奋斗的我们1 个月前
RHCE的学习(21)
linux·学习·shell·redhat·rhce·rhcsa
码农不惑1 个月前
如何在Debian系统里使用Redhat(CentOS)的方式配置网络
网络·centos·debian·shell·redhat
致奋斗的我们1 个月前
RHCE的学习(11)
linux·网络·学习·redhat·rhce·rhcsa
致奋斗的我们2 个月前
RHCE的学习(7)
linux·服务器·网络·学习·redhat·rhce·rhcsa
咕噜Yuki06093 个月前
博睿谷IT认证-订阅试学习
linux·学习·redhat·rhce·红帽认证·ocm认证
不想秃头的烟花3 个月前
Linux安装软件的方法
linux·debian·redhat·软件仓库
JovaZou4 个月前
【ls】Centos/Linux ls命令详细介绍
linux·运维·服务器·centos·redhat