如何检查 ISO 9660 iso 中 EFI 分区的内容

如何检查 ISO 9660 iso 中 EFI 分区的内容

我尝试过转换仅 BIOS 的 iso 来启动 BIOS 和 EFI,但没有成功。我认为问题在于 EFI 的构建方式。如何检查 ISO9660 iso 中的 EFI 分区?

fdisk -l 的结果

larry@larry-Satellite-C55-A:~/foxclone$ fdisk -l foxclone025-02.iso
Disk foxclone025-02.iso: 527 MiB, 552599552 bytes, 1079296 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x1b288083

Device              Boot Start     End Sectors  Size Id Type
foxclone025-02.iso1 *        0 1079295 1079296  527M  0 Empty
foxclone025-02.iso2        136    3015    2880  1.4M ef EFI (FAT-12/16/32)

构建脚本:

#!/bin/bash

# The example names get mapped to their roles here
orig_iso="$HOME"/foxclone/foxclone025-01.iso
new_iso="$HOME"/foxclone/foxclone025-02.iso
new_files="$PWD"
mbr_template=/usr/lib/ISOLINUX/isohdpfx.bin


# Extract MBR template file to disk
dd if="$orig_iso" bs=1 count=432 of="$mbr_template"


# Create the new ISO image

xorriso -as mkisofs "$new_files" \
  -o "$HOME"/foxclone/foxclone025-02.iso \
  -isohybrid-mbr /usr/lib/ISOLINUX/isohdpfx.bin \
  -c isolinux/boot.cat \
  -b isolinux/isolinux.bin \
   -no-emul-boot -boot-load-size 4 -boot-info-table \
  -eltorito-alt-boot \
  -e isolinux/efiboot.img \
   -no-emul-boot \
   -isohybrid-gpt-basdat \
  -m grub.cfg

感谢您提供的任何帮助,拉里

相关内容