我正在使用没有 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
,因此您可以在其中输入一个唯一的标识符。