windows+centos+ubuntu多系统环境,ubuntu启动修复

故障现象:

        在windows中调整分区后,ubuntu系统无法启动,centos启动进入保护模式

解决过程

一、

双硬盘,centos硬盘EFI分区还在,ubuntu硬盘EFI分区消失,发现一个300的分区但是不是efi分区,查看分区无数据

重建EFI分区

fdisk /dev/nvme0n1p1  

d 删除原有分区

n 新建分区  并将分区调整为EFI分区

w 保存

在EFI分区中新建目录EFI

在EFI目录中新建目录BOOT和ubuntu

BOOT分区中添加efi文件

在ubuntu目录添加文件

其中grub.cfg 文件需要自行配置

search.fs_uuid 后面的uuid配置成根分区的uuid   root 后的hd0,gpt3  为根分区的名称,在grub中使用ls命令可以显示

set prefix = ($root)'/boot/grub'  设置前缀为hd0,gpt3/boot/grub  就是hd0盘的gpt3分区,也就是根分区下的/boot/grub 为启动grub

configfile $prefix/grub.cfg   grub配置文件hd0,gpt3/boot/grub/grub.cfg

efi文件可以使用其它系统的拷过来

二、

使用efibootmgr命令添加引导项

efibootmgr -c -w -L “BootOptionName” -d /dev/nvme0n1p1 -p 1 -l \\EFI\\ubuntu\\elilo.efi

其中-d 参数后面是系统所在的硬盘设备名称,例如/dev/hda、/dev/hdb
-p 参数是vfat 分区的分区编号/dev/hda1 用-p 1
/dev/sda2 用-p 2
-l 参数后面是该引导项指向的efi 启动文件在该分区上的位置。请注意使用“\\”来表示目录的分级。
例如:/EFI/asianux/elilo.efi
应写成:\\EFI\\asianux\\elilo.efi

基中分区名称和efi文件请自行调整

命令执行完成显示新加入的启动项后重启机器,选择新加启动项启动成功进入系统!

posted @   清风6661  阅读(129)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
点击右上角即可分享
微信分享提示