UEFI下误删Ubuntu的Grub引导怎么恢复?

不小心在UEFI下把Ubuntu的Grub引导删除了,这样一来就无法开机自动进入Ubuntu,只能通过手动引导来进入 。不过我们可以用一些方法来恢复Ubuntu的Grub引导,具体的方法请看下文 。
1.手动引导进入Ubuntu
首先,下载Ubuntu的安装镜像(里边有grub2引导),或者直接下个grub2,然后装在U盘里 。
开机选择u盘进入Grub引导 。然后按c进去命令行模式 。
然后手动引导进入原先的Ubuntu,我的boot分区是独立出来的,在(hd0,gpt6)里边,根分区在(hd0,gpt7)里 。
如果忘了自己的分区情况,可以ls,
setroot=(hd0,gpt6)
linux/vmli...roroot=/dev/sda7
initrd/initrd...
boot
省略号部分直接按Tab键补全 。然后就能进入ubuntu了 。
2.重建ESP分区里的Grub引导
在Ubuntu里打开命令行,先su进入root模式 。然后grub-install -v 注意,这里的v是小写的 。然后屏幕一顿弹出消息,然后就重建好了 。
看有没有重建好的话,可以mount ESP分区,然后看里面有没有个Ubuntu的目录,里面应该有4个文件 。

UEFI下误删Ubuntu的Grub引导怎么恢复?


为了以后不再发生这种悲剧,建议折腾前先把ESP分区备份下来,以防不测 。
先用fdisk -u -l 看一下哪个是ESP分区 。
UEFI下误删Ubuntu的Grub引导怎么恢复?


这里看到我的ESP分区是在/dev/sda4,记下Sectors,这里是522240 。
然后:
dd if=/dev/sda4 bs=512 count=522240 of=./efi.backup
dd的作用是把指定的输入文件拷贝到指定的输出文件 。
if=源文件路径,这是填我们要备份的分区 。
of=目标文件路径,这里我写的是在当前目录下生成一个efi.backup的文件 。
bs=512是指块的大小为512字节 。
【UEFI下误删Ubuntu的Grub引导怎么恢复?】 count 就是你要复制多少个块,这里我们就填上面获得的Sectors 。
以后恢复的话,直接dd if=./efi.backup bs=512 of=/dev/sda4恢复就行了 。
以上就是UEFI下误删Ubuntu的Grub引导怎么恢复的全部内容了,在Ubuntu的命令行下就可以重新创建Ubuntu系统的Grub引导 。

    推荐阅读