[syslinux] isohybrid: slint64-14.1.iso: unable to find mac efi image
Thomas Schmitt
scdbackup at gmx.net
Tue Jul 29 14:19:21 PDT 2014
Hi,
Didier Spaier:
> I uploaded both ISO images on http://slint.fr/misc/MacBoot
A good opportunity to brag with xorriso's boot inspection
features (since xorriso-1.3.8):
xorriso -indev slint64-14.1-Thomas_mkisofs.iso \
-report_el_torito plain \
-report_system_area plain
yields (block size is 2048):
El Torito images : N Pltf B Emul Ld_seg Hdpt Ldsiz LBA
El Torito boot img : 1 BIOS y none 0x0000 0x00 4 767
El Torito boot img : 2 UEFI y none 0x0000 0x00 2880 47
El Torito boot img : 3 UEFI y none 0x0000 0x00 5472 779
El Torito img path : 1 /isolinux/isolinux.bin
El Torito img opts : 1 boot-info-table isohybrid-suitable
El Torito img path : 2 /isolinux/efiboot.img
El Torito img path : 3 /isolinux/macboot.img
So El Torito is now as expected by isohybrid.c, which added to the
ISO image an MBR, a GPT, and an Apple Partition Map.
The MBR partitions are (block size is 512):
MBR partition table: N Status Type Start Blocks
MBR partition : 1 0x80 0x00 0 155648
MBR partition : 2 0x00 0xef 188 2880
MBR partition : 3 0x00 0x00 3116 5472
MBR partition path : 2 /isolinux/efiboot.img
MBR partition path : 3 /isolinux/macboot.img
Some UEFI systems and especially "Macs" boot via this MBR.
But only if no GPT is present.
Whatever, we get the proof that this image was treated by
classic isohybrid.c without my recent bug fix proposals:
GPT backup problems: Implausible header LBA 155646
...
GPT partition name : 1 49534f4879627269642049534f0049534f487962726964004170706c
Nevertheless, both non-BIOS images are mentioned in GPT
(block size 512):
GPT start and size : 2 188 2880
GPT partition path : 2 /isolinux/efiboot.img
...
GPT start and size : 3 3116 5472
GPT partition path : 3 /isolinux/macboot.img
They also are mentioned in an Apple Partition Map (block size 2048):
APM start and size : 1 47 2880
APM partition path : 1 /isolinux/efiboot.img
...
APM start and size : 2 779 5472
APM partition path : 2 /isolinux/macboot.img
This resembles much the equipment of Fedora Live ISOs.
(Including the size numbers which are too large by a factor of 4.)
-------------------------------------------------------------------
xorriso -indev slint64-14.1-Thomas_xorriso.iso \
-report_el_torito plain \
-report_system_area plain
shows that xorriso avoids some of the classic isohybrid.c flaws.
Elsewise the result is quite similar:
El Torito images : N Pltf B Emul Ld_seg Hdpt Ldsiz LBA
El Torito boot img : 1 BIOS y none 0x0000 0x00 4 43
El Torito boot img : 2 UEFI y none 0x0000 0x00 2880 55
El Torito boot img : 3 UEFI y none 0x0000 0x00 5472 775
El Torito img path : 1 /isolinux/isolinux.bin
El Torito img opts : 1 boot-info-table isohybrid-suitable
El Torito img path : 2 /isolinux/efiboot.img
El Torito img path : 3 /isolinux/macboot.img
...
MBR partition table: N Status Type Start Blocks
MBR partition : 1 0x80 0x00 0 155648
MBR partition : 2 0x00 0xef 220 2880
MBR partition : 3 0x00 0x00 3100 5472
MBR partition path : 2 /isolinux/efiboot.img
MBR partition path : 3 /isolinux/macboot.img
...
GPT partition name : 1 490053004f00480079006200720069006400
GPT partname local : 1 ISOHybrid
...
GPT start and size : 2 220 2880
GPT partition path : 2 /isolinux/efiboot.img
...
GPT start and size : 3 3100 5472
GPT partition path : 3 /isolinux/macboot.img
...
APM partition name : 1 EFI
APM partition type : 1 Apple_HFS
APM start and size : 1 775 1368
APM partition path : 1 /isolinux/macboot.img
I forgot to advise (or misadvise) -isohybrid-apm-hfsplus with
the image /isolinux/efiboot.img . So we only got one APM
partition here. A slight deviation from mjg59's layout.
It is a lie to give efiboot.img the partition type Apple_HFS.
isohybrid.c does it that way. So the perfect mimic would be
-e isolinux/efiboot.img \
-isohybrid-gpt-basdat -isohybrid-apm-hfsplus \
instead of
-e isolinux/efiboot.img \
-isohybrid-gpt-basdat \
-------------------------------------------------------------------
Your are back on the track blazed by Fedora Live.
Again: Be aware that Colin Watson reports that such MBR+GPT
hybrids do not boot on some Macs and amd64 PCs.
Ubuntu therefore has alternative "Mac" ISOs with El Torito
and MBR only. (I.e. no -u -m, no -isohybrid-gpt-basdat
-isohybrid-apm-hfsplus -isohybrid-gpt-hfsplus.)
> Meanwhile, if one of you happens to have a Mac at hand
This seems to be the biggest obstacle with Mac booting: No Mac.
Have a nice day :)
Thomas
More information about the Syslinux
mailing list