情况是这样的,几年前在本机上装了WIN10(弃用)、ubuntu 16.04.4(也忘了)、centos7(跑了2年)
然后因为docker使用问题升级了内核,完成后:
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (4.4.235-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-957.12.1.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core)
3 : CentOS Linux (0-rescue-4fbc13c077274eb389c062851ff570b5) 7 (Core)
操作了
1.grub2-set-default 0
2.grub2-mkconfig -o /boot/grub2/grub.cfg
3.reboot now
但是发现重启后仍然进入的是内核升级前的 CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core),原来是EFI内容没变,菜单也不是上述0-3的内容
现在如何在centos 3.10.0运行下,更改(添加)EFI启动指向?
/boot/efi/EFI:
/boot:
内核升级完了才发现…情况比较复杂,GRUB2没写入EFI?
-
- 帖子: 83
- 注册时间: 2017-01-03 19:08
- 系统: RHEL7
-
- 帖子: 1318
- 注册时间: 2005-09-13 4:56
- 系统: Ubuntu Jammy Jellyfi
Re: 内核升级完了才发现…情况比较复杂,GRUB2没写入EFI?
1. df 查看系统运行时是否挂载了efi分区,如果没有,手动挂载上
2. upgrade-grub2,看输出结果
2. upgrade-grub2,看输出结果
-
- 帖子: 83
- 注册时间: 2017-01-03 19:08
- 系统: RHEL7
-
- 帖子: 1318
- 注册时间: 2005-09-13 4:56
- 系统: Ubuntu Jammy Jellyfi
Re: 内核升级完了才发现…情况比较复杂,GRUB2没写入EFI?
update-grub会自动遍历efi分区上的.efi驱动文件,正常是不会没有的。如果确实没有了,说明原先的ubuntu和win10不是以uefi方式引导的。
但是,update-grub同时也会自动遍历legacy方式的磁盘或分区引导信息,如果没有找到,说明原先的ubuntu和win10的引导信息已经丢失了。
对于ubuntu,可以进入系统重新安装grub解决。对于win10,可以通过grub2手动加载.efi驱动(哪怕efi分区里的驱动没有了,win10系统分区里还有),然后在win10的高级启动功能里修复引导。grub2手动命令类似这样:
insmod ntfs
set root=(hdX,gptX)
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
boot
如果分区表是msdos格式的,gpt改为msdos。
但是,update-grub同时也会自动遍历legacy方式的磁盘或分区引导信息,如果没有找到,说明原先的ubuntu和win10的引导信息已经丢失了。
对于ubuntu,可以进入系统重新安装grub解决。对于win10,可以通过grub2手动加载.efi驱动(哪怕efi分区里的驱动没有了,win10系统分区里还有),然后在win10的高级启动功能里修复引导。grub2手动命令类似这样:
insmod ntfs
set root=(hdX,gptX)
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
boot
如果分区表是msdos格式的,gpt改为msdos。
- qy117121
- 论坛版主
- 帖子: 50546
- 注册时间: 2007-12-14 13:40
- 系统: Winbuntu
- 来自: 志虚国乌由市
- 联系:
Re: 内核升级完了才发现…情况比较复杂,GRUB2没写入EFI?
UEFI 又不管引导哪个内核,他只是引导启动grub2 , 至于grub2 启动菜单里的选项是grub.cfg的事
我看你这/boot 下面,有grub 和grub2 ,我很怀疑, 启动菜单选择内核那里的并不是grub2下面的grub.cfg
你看看/boot/grub/下面有没有grub.cfg ,有的话有几个内核选项
我看你这/boot 下面,有grub 和grub2 ,我很怀疑, 启动菜单选择内核那里的并不是grub2下面的grub.cfg
你看看/boot/grub/下面有没有grub.cfg ,有的话有几个内核选项
渠月 · QY
本人只会灌水,不负责回答问题
无聊可以点一下→ http://u.nu/ubuntu
Ubuntu 20.04 快速设置指南,请配合浏浏览器自动翻译使用
邮箱 chuan@ubuntu.org.cn
本人只会灌水,不负责回答问题
无聊可以点一下→ http://u.nu/ubuntu
Ubuntu 20.04 快速设置指南,请配合浏浏览器自动翻译使用
邮箱 chuan@ubuntu.org.cn
- qy117121
- 论坛版主
- 帖子: 50546
- 注册时间: 2007-12-14 13:40
- 系统: Winbuntu
- 来自: 志虚国乌由市
- 联系:
Re: 内核升级完了才发现…情况比较复杂,GRUB2没写入EFI?
?? 为什么是/etc/grub2.cfg ?rhinolt 写了: ↑2020-09-06 23:09 然后因为docker使用问题升级了内核,完成后:
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (4.4.235-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-957.12.1.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core)
3 : CentOS Linux (0-rescue-4fbc13c077274eb389c062851ff570b5) 7 (Core)
/boot/grub2/grub.cfg 里有新安装的4.10内核的条目吗?
渠月 · QY
本人只会灌水,不负责回答问题
无聊可以点一下→ http://u.nu/ubuntu
Ubuntu 20.04 快速设置指南,请配合浏浏览器自动翻译使用
邮箱 chuan@ubuntu.org.cn
本人只会灌水,不负责回答问题
无聊可以点一下→ http://u.nu/ubuntu
Ubuntu 20.04 快速设置指南,请配合浏浏览器自动翻译使用
邮箱 chuan@ubuntu.org.cn
-
- 帖子: 83
- 注册时间: 2017-01-03 19:08
- 系统: RHEL7
Re: 内核升级完了才发现…情况比较复杂,GRUB2没写入EFI?
是的,升级完的内核启动项在 /boot/grub2/grub.cfgqy117121 写了: ↑2020-09-07 12:28?? 为什么是/etc/grub2.cfg ?rhinolt 写了: ↑2020-09-06 23:09 然后因为docker使用问题升级了内核,完成后:
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (4.4.235-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-957.12.1.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core)
3 : CentOS Linux (0-rescue-4fbc13c077274eb389c062851ff570b5) 7 (Core)
/boot/grub2/grub.cfg 里有新安装的4.10内核的条目吗?