检测系统启动时使用的 GRUB2 菜单项

检测系统启动时使用的 GRUB2 菜单项

我正在使用没有 KVM 的远程服务器,正在修改引导加载程序菜单中的内容。我启用了回退和“默认引导一次”选项,以防万一我搞砸了。

有没有办法(启动后)知道最终选择了 GRUB2 项目列表中的哪个菜单项?这样我就会知道是否发生了回退(即“默认一次”失败)。

我的 中有类似这样的条目/etc/grub/grub.cfg

menuentry 'Ubuntu, with Linux 2.6.32-28-generic-pae TEST' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    insmod ext2
    set root='(hd0,1)'
    search --no-floppy --fs-uuid --set f70c6784-490f-4737-8168-cbcce4793b2b
    linux   /vmlinuz-2.6.32-28-generic-pae root=/dev/sda3 ro   panic=5
    initrd  /initrd.img-2.6.32-28-generic-pae
}

有没有办法在其中设置某种类型的环境变量,以便在启动后检查已加载哪个条目?或者 GRUB2 可能已经有某种方法知道这一点了?

答案1

您在该linux行中输入的任何内容都可通过 获得/proc/cmdline,因此您可以在其中输入一个唯一的标识符。

相关内容