假设我有一个 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。