GRUB菜单介绍

对于Linux操作系统来说,GRUBGRand Unified Bootloader,统一启动加载器)是使用最为广泛的多系统引导器程序。系统控制权传递给 GRUB 以后,将会显示启动菜单给用户选择,并根据所选项(或采用默认值)加载 Linux内核文件,然后将系统控制权转交给内核。需要注意的是,CentOS 7采用的是GRUB2启动引导器。

GRUB菜单恢复方法

GRUB是大多数Linux操作系统默认使用的引导程序,可以通过启动菜单的方式选择进入不同的操作系统(如果有)。当配置文件/boot/grub2/grub.cfg丢失,或者关键配置出现错误,或者 MBR 中的引导程序遭到破坏时,Linux 主机启动后可能只出现“grub>”的提示符,无法完成进一步的系统启动过程。下面我们就来通过实践来模拟GRUB菜单损坏并修复的过程。(实践在VMware 15虚拟机中完成)

1、打开VMware 15虚拟机,启动Linux系统,打开终端,通过命令删除GRUB菜单配置文件(/boot/grub2/grub.cfg),模拟GRUB菜单损坏,重启Linux系统,看是否能够启动系统。

[root@localhost ~]# rm -rf /boot/grub2/grub.cfg    //删除grub配置文件,模拟grub菜单损坏
[root@localhost ~]# init 6                         //重启Linux系统

详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置_第1张图片

2、下面我们来修复GRUB菜单,使系统正常启动,修复GRUB菜单可以通过手动输入grub菜单配置文件,来完成修复,grub菜单配置文件较多,手动输入很不方便,一般这种方法我们不会去使用,还有一种方法就是使用CentOS 7镜像文件(安装光盘)引导进入急救模式,通过命令进入bash环境,重新加载配置文件,使grub菜单配置文件恢复。

  • 首先,将CentOS 7镜像文件放到VMware 15虚拟光驱中,并连接使用光驱,然后,重新启动系统,在重启读条界面按ESC键进入boot模式,选择从光驱启动,进入安装引导界面。

详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置_第2张图片详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置_第3张图片详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置_第4张图片

  • 在镜像文件安装引导界面选择Troubleshooting进入急救模式,然后选择Rescue a CentOS system进入镜像的命令模式,这个时候系统会自动加载,加载完成后选择输入1选择Continue加载到系统基本镜像模式,通过回车键进入shell环境。

详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置_第5张图片详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置_第6张图片详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置_第7张图片

  • shell模式下输入命令chroot /mnt/sysimage/加载系统镜像,这个时候会进入bash环境,在bash环境下输入命令grub2-install /dev/sda/重新构建sda磁盘,然后继续输入命令grub2-mkconfig -o /boot/grub2/grub.cfg重新构建grub2配置文件,输入exit命令退出bash环境。

详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置_第8张图片

  • 这个时候我们输入命令reboot重启系统,看受否能够正常开机。

详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置

详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置_第9张图片

忘记root密码后重置方法

在日常生产环境中,有可能会忘记root用户密码,或在工作交接时未来及交接root用户密码等情况的产生,这个时候就需要我们重置root密码。

CentOS 7中重置密码的方法比较简单,同样我们需要用到CentOS 7镜像文件,和上面修复grub菜单方式相似,通过镜像安装引导进入急救模式,进入命令,在命令模式输入选择进入shell环境,上面已经讲解过如何进入shell环境这里就不在重复了。

1、在shell模式中输入命令chroot /mnt/sysimage/加载系统镜像,这个时候会进入bash环境,在bash环境下直接输入命令passwd root命令,然后输入新密码就可以更改root密码了。

详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置_第10张图片

2、输入命令exit退出bash环境,然后输入命令reboot重启系统,然后选择root用户,输入新设的密码,看是否能够进入root用户界面。

详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置

详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置_第11张图片详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置_第12张图片详述CentOS 7中GRUB菜单恢复与忘记root密码后如何重置_第13张图片

通过上面的实践成功通过CentOS 7镜像文件修复grub菜单与root用户密码的重置。希望对大家有所帮助!!!

补充内容

CentOS 7系统镜像文件:https://pan.baidu.com/s/189yvb_WAYi8vrIhhxBwoXA 提取码:6crs