我需要找出下次启动时将使用哪个内核,无论当前运行的内核如何,这是在 shell 脚本中完成的。
可能安装了多个内核,GRUB 配置为引导一个内核,并且这可能会通过内核升级/降级而改变。因此脚本需要找出下次启动的内核是什么。
一种方法是从 GRUB 配置中解析默认内核。可以检测到默认的 GRUB 菜单项,例如:
grep GRUB_DEFAULT /etc/default/grub | cut -d '=' -f 2
然后从 GRUB 配置中获取菜单项,例如:
grep -A 15 '^menuentry' /boot/grub/grub.cfg | grep -o -P 'vmlinuz-\S+'
并通过将索引与配置的默认菜单项进行匹配来找到正确的菜单项。
对于我的具体情况,无需涵盖 GRUBsaved
条目,但如果也涵盖了该条目,那就太好了。
有没有更好/更干净的方法来获取这些信息?