为了测试docker windows把Windows10重装了,安装之后发现centos不能启动了,还以为在windows下使用ext2fsd把根分区破坏了,进去看访问却是正常的,看了一下windows下的ESP分区(EFI System Partition),实际上也是Linux的EFI挂在的分区,即:

EFI目录下是有centos目录的,且下面是centos的相关引导文件,而当时看是没有centos目录的,才意识到安装windows时手贱把ESP分区格式化了,本文就记录如何恢复Linux引导等类似的问题,以免下次手贱时再折腾。

首先需要将centos7刻录一个USB启动盘,iso镜像没版本要求

从USB启动进入到live模式

确保能执行efibootmgr命令,安装对应的包

将根分区和efi分区挂在指定目录:

挂在sys,proc,dev,然后chroot

在chroot内重装相关RPM

在chroot内生成grub2.conf:

退出chroot。

添加EFI启动项,注意具体参数配置:

如果启动看不到windows或者CentOS,注意看一下efibootmgr BootOrder的配置。


CentOS EFI格式化后恢复来自于OenHan

链接为:http://oenhan.com/centos-grub2-efi-esp-recovery

发表评论