如何使用 grub 作为 ipxe 的网络启动菜单?

如何使用 grub 作为 ipxe 的网络启动菜单?

我正在设置一个小型办公室的网络启动解决方案。我已将机器配置为使用嵌入式 ipxe 脚本通过 pxe 启动初始 ipxe.efi nbp,以便为我的 k8s 节点向 matchbox 服务器发送请求。效果很好。

我需要扩展它以显示菜单,以便用户可以选择 Matchbox 启动,或手动选择操作系统。我知道 ipxe 本身支持菜单,但我也可以将启动链接到 grub 或 syslinux。

假设我选择 grub,我有几个问题:

  • 我该如何设置我的 ipxe 脚本来链式启动 grub?
  • 既然它不与特定的操作系统绑定,我应该从哪里获取 grub 资产?
  • 我如何托管 grub 配置以便 grub efi 正确找到它?
  • 似乎 grub 条目需要 kernel/initram 规范而不是 iso,但我想要支持启动的所有操作系统(如 proxmox/Linux distros/memtest)都以 iso 的形式出现。我该如何支持这些?
  • 我尝试提取 iso 的内容,但我不知道如何正确指定文件系统,因为它托管在网络位置。如何将 grub 条目指向文件系统的其余部分?

相关内容