无忧启动论坛

标题: grub2不同cpu构架合盘问题 [打印本页]

作者: 2012fengxi    时间: 2025-1-31 08:49
标题: grub2不同cpu构架合盘问题
我的U盘FAT32分区的结构,x86下会读取efi/boot/bootx64.efi引导,arm会读取bootaa64.efi引导,
这两个文件都会读取同一个配置文件grub.cfg
G:\
├──boot
│  └──grub
│     └  grub.cfg
└──efi
   └──boot
      ├  bootx64.efi
      └  bootaa64.efi
现在我想实现根据不同cpu构架自动高亮菜单项,grub2有内置变量$grub_cpu,
当$grub_cpu=x86_64高亮菜单1,当$grub_cpu=arm64高亮菜单2,有没有办法实现呢?
menuentry "Kylin V10 SP1 x86" {
        linux        /x64/casper/vmlinuz ignore_uuid boot=casper username=kylin hostname=OS audit=0 security= live
        initrd        /x64/casper/initrd.lz
}
menuentry "Kylin V10 SP1 arm64" {
        linux        /arm64/casper/vmlinuz ignore_uuid boot=casper username=kylin hostname=OS audit=0 security= live
        initrd        /arm64/casper/initrd.lz
}



作者: cchessbd    时间: 2025-1-31 09:06
本帖最后由 cchessbd 于 2025-1-31 09:07 编辑

把文件夹重命名为$grub_cpu,菜单改为/$grub_cpu/casper/...应该可以,我未用过grub2。这样应该一个菜单就可以了,不用管cpu的架构。

作者: wintoflash    时间: 2025-1-31 09:42
本帖最后由 wintoflash 于 2025-1-31 09:44 编辑
  1. if [ "${grub_cpu}" = "x86_64" ]; then
  2.   menuentry "x86_64 linux" {}
  3. elif [ "${grub_cpu}" = "arm64" ]; then
  4.   menuentry "arm64 linux" {}
  5. fi
复制代码

作者: 2012fengxi    时间: 2025-1-31 10:14
好好,又学到了
作者: szwp    时间: 2025-1-31 15:53
为啥要高亮?不支持的项别显示啊
作者: 2012fengxi    时间: 2025-1-31 16:29
szwp 发表于 2025-1-31 15:53
为啥要高亮?不支持的项别显示啊

因为不止两个启动项,reboot这些是公共的,如果能高亮(选定)默认就更好
作者: l3429900    时间: 2025-1-31 21:09
wintoflash 发表于 2025-1-31 09:42

多谢大师,学习了
作者: nianyueriPE    时间: 2025-1-31 23:07
谢谢分享
作者: nianyueriPE    时间: 2025-1-31 23:07
学习了
作者: fjun67    时间: 7 天前
谢谢分享
作者: 2012fengxi    时间: 3 天前
成品的grub2 2.12版以及菜单
http://bbs.wuyou.net/forum.php?m ... Dk3fDQ0NDYwNA%3D%3D




欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) Powered by Discuz! X3.3