RHEL 6.4 自定义 DVD 启动问题

RHEL 6.4 自定义 DVD 启动问题

我正在创建自定义 RHEL 6.4 iso,以便在重建独立主机时节省时间。

在我自定义菜单并添加额外的 kickstart 文件之前,我尝试了简单的解压 -> 重新打包,以确保 iso 映像确实有效。

我的所有版本都无法加载 grub 菜单,只是停留在提示符处,而不是加载 grub 菜单。

boot:

我正在使用以下脚本转储并重新创建 iso

ISOFILE="/home/matt/isobuild/rhel-server-6.4-x86_64-dvd.iso"
STAGEDIR="/home/matt/isobuild/rhel6.4/"
FINALISOFILE="/tmp/autoiso.iso"
TMPMOUNT="/mnt/dvd"


mkdir $TMPMOUNT
mount -o loop,ro $ISOFILE $TMPMOUNT
rsync -av --progress $TMPMOUNT $STAGEDIR
umount $TMPMOUNT

cd $STAGEDIR
chmod a+w isolinux/isolinux.bin
mkisofs -o /tmp/rhel6.4.iso \
-b isolinux/isolinux.bin -c isolinux/boot.cat \
-no-emul-boot -boot-load-size 4 -boot-info-table \
-r -T -J -V "RHEL 6.4 Custom Install DVD" .

它如预期那样给我留下了 iso 文件/tmp/rhel6.4.iso,但是 grub 似乎失败了。

对于为什么会出现这种情况,您有什么想法吗?或者您能建议我如何进行调试吗?

谢谢!

马特

答案1

我敢打赌你的问题出在这个步骤中的子目录上mkisofs。我曾多次使用这些步骤来创建自定义启动媒体。

  1. 创建一个目录来挂载您的源
    mkdir /tmp/bootiso
  2. 循环安装您正在修改的源 ISO。(从 Red Hat / CentOS 下载。)
    mount -o loop /path/to/some.iso /tmp/bootiso
  3. 为您的自定义媒体创建工作目录。
    mkdir /tmp/bootisoks
  4. 将源媒体复制到工作目录。
    cp -r /tmp/bootiso/* /tmp/bootisoks/
  5. 卸载源 ISO 并删除目录
    umount /tmp/bootiso && rmdir /tmp/bootiso
  6. 更改工作目录的权限。
    chmod -R u+w /tmp/bootisoks
  7. 将已针对软件包和 %post 修改的 Kickstart 脚本复制到工作目录。
    cp /path/to/someks.cfg /tmp/bootisoks/isolinux/ks.cfg
  8. 将任何其他 RPM 复制到目录结构并更新元数据。
    cp /path/to/*.rpm /tmp/bootisoks/Packages/.
    cd /tmp/bootisoks/Packages && createrepo -dpo .. .
  9. 创建新的 ISO 文件。
    cd /tmp/bootisoks && mkisofs -o /tmp/boot.iso -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T isolinux/

答案2

有一个名为 ISO Master 的工具,您可以使用它将文件添加到原始映像,而不是重新创建它。

相关内容