[syslinux] How to use syslinux(isolinux, etc.) for EFI?
Thomas Schmitt
scdbackup at gmx.net
Fri Dec 13 23:47:08 PST 2013
Hi,
> There are two variations I know of -- a FAT filesystem as part of the
> ISO, and using the EFI executable with the appropriate El Torito flags.
Currently i only know of FAT images which get pointed to by
El Torito, MBR partition, GPT partition.
> I might want to ask Matt Garrett what he has used in the past.
When i studied his Fedora Live CD setup of may 2012, it was
a FAT image (/isolinux/efiboot.img).
This image seems not to stem from ISOLINUX:
# mount -o loop Fedora-LiveCD.iso /mnt
# mount -o loop /mnt/isolinux/efiboot.img /mnt1
# find /mnt1
/mnt1
/mnt1/efi
/mnt1/efi/boot
/mnt1/efi/boot/bootx64.efi
/mnt1/efi/boot/grub.conf
/mnt1/efi/boot/splash.xpm.gz
/mnt1/efi/boot/BOOTX64.conf
#
See also http://mjg59.dreamwidth.org/11285.html
The ISO image has a few quirks which obviously stem from isohybrid.c:
- Apple partition map entries bear the block count for blocks of 512 bytes
whereas Apple Block0 announces blocks of 2048 bytes.
- The end_lba in the first GPT entry should be 1 less
than the count of 512 byte blocks of the ISO image.
- The GPT partition name in Fedora-LiveCD.iso is 8 bit instead of UTF-16LE
and result of faulty memory operation on a text constant:
"ISOHybrid ISO ISOHybrid Appl"
- The GPT backup partition array is stored 17 KiB before the end of
MBR partition 1 resp. the image file.
Wikipedia suggests "LBA -33" counted from end.
The backup GPT header is 512 blocks too early, too.
I once reported them here, but did not watch whether they
got fixed meanwhile.
debian-7.1.0-amd64-netinst.iso has FAT image
/boot/grub/efi.img
with
efi
efi/boot
efi/boot/bootx64.efi
This one was produced by xorriso without using isohybrid.c.
So its quirks are to blame on me. (Please report if you find
them.)
Have a nice day :)
Thomas
More information about the Syslinux
mailing list