若误删grub引导文件,如何恢复?

(1)删除grub引导文件但系统并未重启

1).模拟实验环境

	[root@localhost ~]# cd /boot/grub2
    [root@localhost grub2]# ls
    device.map fonts grub.cfg grubenv i386-pc locale themes
    [root@localhost grub2]# rm -rf grub.cfg 

在这里插入图片描述
2).解决方案:直接恢复引导文件即可

	##grub2-mkconfig即为grub.cfg文件的内容

在这里插入图片描述

	##恢复文件; > 表示重定向正确输出
 	[root@localhost grub2]# grub2-mkconfig > /boot/grub2/grub.cfg
	[root@localhost grub2]# ls 
 	device.map fonts grub.cfg grubenv i386-pc locale themes 

在这里插入图片描述
(2)删除grub引导文件并且系统并已经重启
1).模拟实验环境

	 [root@localhost grub2]# pwd 
	 /boot/grub2
	 [root@localhost grub2]# ls 
	 device.map fonts grub.cfg grubenv i386-pc locale themes 
	 ##删除grub引导文件
	 [root@localhost grub2]# rm -rf grub.cfg 
	 [root@localhost grub2]# ls 
	 device.map fonts grubenv i386-pc locale themes

在这里插入图片描述

	##查看/boot分区
	[root@localhost ~]# df -h

在这里插入图片描述

	##重启
	[root@localhost grub2]# reboot

2)系统重启后出现以下界面
在这里插入图片描述
3)设定开机引导

	1.设置系统分区 set root=‘hd0,msdos1’ 
	2.挂载根设备 linux16 /boot/vmlinuz-3.10.0-514.el7.x86_64 ro root=/dev/sda3 (可用Tab键	补齐) 
	3.指定初始化镜像 initrd16 /boot/initramfs-3.10.0-514.el7.x86_64.img (可用Tab键补齐)   
    4.boot启动系统

在这里插入图片描述
注意:设定开机引导的命令不唯一,分为以下两种情况

(1)boot分区被独立出
	第一行:设置系统分区
	/dev/sda1   # 第一块虚拟设备,a表示第一块
	hd0         #第一块硬盘,0表示第一块;0与a对应
	msdos1      #msdos1中的1与/dev/sda1中的1相对应
	第二行:linux16  /vmlinuz......(绝对路径)
	第三行:Initrd16  /initramfs......(绝对路径)
	(2)boot分区未被独立出来
	boot分区未被独立出来:即boot分区在/目录下
	第一行 :设置系统分区   (同上)
	第二行:linux16 /boot /vmlinuz......
	第三行:Initrd16  /boot/initramfs.....

在这里插入图片描述
注意:以上程序只是开机引导,但并未生成文件,所以下次开机还得继续引导
在这里插入图片描述
(4)手动恢复引导文件

	 ##为了避免下次开机再进行引导,故手动恢复引导文件
	 [root@localhost grub2]# grub2-mkconfig > /boot/grub2/grub.cfg 
	 [root@localhost grub2]# ls 
	 device.map fonts grub.cfg grubenv i386-pc locale themes 

在这里插入图片描述
reboot
在这里插入图片描述

Logo

更多推荐