我正在尝试按如下方式创建 iso(支持 uefi),
genisoimage \
-follow-links \
-o $dir/$iso_name \
-b isolinux.bin \
-c boot.cat \
-no-emul-boot \
-eltorito-alt-boot \
-eltorito-boot images/efiboot.img \
-V 'CENTOS 7' \
-boot-load-size 4 \
-boot-info-table\
-R -J -v -T \
$ISOLINUX_DIR/
但我面临如下错误,
启动映像的大小为 48 个扇区 -> 无模拟
启动映像的大小为 4 个扇区 -> mkisofs:错误 - 启动映像'/net/。。。/CentOS/isolinux/images/efiboot.img' 的大小不符合要求。
答案1
您没有将第二个启动映像标记为用于 EFI 而不是 x86 BIOS。根据 genisoimage 的变体,这可以通过选项“-e”而不是“-eltorito-boot”来完成。它应该伴随着选项“-no-emul-boot”的出现。
选项“-boot-load-size 4 -boot-info-table”适用于 BIOS 映像“isolinux.bin”,需要移至分隔符“-eltorito-alt-boot”之前。
尝试
genisoimage \
-follow-links \
-o $dir/$iso_name \
-b isolinux.bin \
-c boot.cat \
-no-emul-boot \
-boot-load-size 4 \
-boot-info-table \
-eltorito-alt-boot \
-e images/efiboot.img \
-no-emul-boot \
-V 'CENTOS 7' \
-R -J -v -T \
$ISOLINUX_DIR/
如果你的 genisoimage 没有提供选项 -e,请尝试:
xorriso -as mkisofs \
...above.options...
(选项 -T 将被忽略。)
祝你今天过得愉快 :)
托马斯