如何将 chroot 转换为 GRUB2 可引导 ISO 映像?

如何将 chroot 转换为 GRUB2 可引导 ISO 映像?

假设我有一个 chroot,其中包含一个可以工作的 Linux 系统,以及一些额外的初始化脚本,用于在其上安装覆盖文件系统(例如 AUFS)。我还生成了 GRUB2 启动菜单。

我将使用什么命令来:

  • 将必需的 GRUB2 二进制文件安装到 $CHROOT/boot 中,不修改主机MBR
  • 从 $CHROOT 生成可引导 ISO,并使用 GRUB2 作为引导加载程序

请注意,我宁愿使用 GRUB2 而不是 syslinux,因为 syslinux 不会自动检测内核和 initrd 版本。

答案1

如果您有 chroot,则没有 $CHROOT/boot,它将只是 /boot。

假设您已经安装了--bind/dev /proc /dev/pts 和 /sys,那么您只需要执行 agrub-install --force --no-floppy --boot-directory=/boot /dev/sdX并假设您的引导目录是 /boot,而 /dev/sdX 是您想要安装 grub 的 MBR 部分的设备。

我不确定你的启动菜单是否会被覆盖,所以先复制一份。

关于iso的创建,链接可能有适合您的解决方案,我还没有尝试过,但是如果您正在计划制作 live CD,您可能需要考虑到您可能需要它来从 ram 运行整个系统,因此您可能需要创建自定义 initrd。

相关内容