[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Old debian-mac-*-netinst.iso images



Hi,

Andrew M.A. Cater wrote:
> > for an *old* Intel-based Mac Mini that had issues with
> > image booting from certain disk layouts.
> > https://wiki.debian.org/MacMiniIntel#Macmini_2.2C1

I think the paragraph before that one explains better what's the
problem with old Macs and EFI-ready Debian ISOs.

  https://wiki.debian.org/MacMiniIntel#Macmini_1.2C1
  "When booting off CD/DVD, if there is more than one El Torito boot
   record on the disc then the firmware gets confused. It tried to
   offer a choice of the boot options, but it locks up instead."

So it is the second El Torito boot catalog entry for the EFI boot image
(System Partition) which causes the problems.

I would expect that the problem only occurs when the ISO is presented
on an optical medium. But firmwares are not very affine to specs.
So one would have to test whether booting a normal amd64 ISO from USB
stick works on the affected Macs.


Roland Clobus wrote:
> If the netinst and live images are able to properly detect the hardware they
> are running on (including firmware bugs etc), I think it would be nice to
> remove the mac-specific images.

At the stage when the problem occurs, the netinst ISO has no own brain
involved. Only the firmware is running and stumbles over the still
passive El Torito boot catalog.

What we could offer is a program which looks up the address of the
boot catalog from the boot record (2048-byte-block 17, offset 71 bytes,
32 bit little-endian) and then zeroizes in the boot catalog block all
bytes after offset 64.
This would remove the boot catalog entry for EFI and make a normal
amd64 netinst look like the "mac" amd64 netinst.

With 12.7.0:

  $ cp debian-12.7.0-amd64-netinst.iso test.iso
  $ xorriso -indev test.iso -report_el_torito plain
  ...
  El Torito catalog  : 1130  1
  El Torito cat path : /isolinux/boot.cat
  El Torito images   :   N  Pltf  B   Emul  Ld_seg  Hdpt  Ldsiz         LBA
  El Torito boot img :   1  BIOS  y   none  0x0000  0x00      4        5891
  El Torito boot img :   2  UEFI  y   none  0x0000  0x00  19040        1131
  El Torito img path :   1  /isolinux/isolinux.bin
  El Torito img opts :   1  boot-info-table isohybrid-suitable
  El Torito img path :   2  /boot/grub/efi.img

  $ expr 1130 '*' 2048 + 64
  2314304

  $ dd if=/dev/zero conv=notrunc of=test.iso bs=1 seek=2314304 count=1984

  $ xorriso -indev test.iso -report_el_torito plain
  ...
  El Torito catalog  : 1130  1
  El Torito cat path : /isolinux/boot.cat
  El Torito images   :   N  Pltf  B   Emul  Ld_seg  Hdpt  Ldsiz         LBA
  El Torito boot img :   1  BIOS  y   none  0x0000  0x00      4        5891
  El Torito img path :   1  /isolinux/isolinux.bin
  El Torito img opts :   1  boot-info-table isohybrid-suitable

Now there is only one boot image and the Mac firmware has no reason to
ask the user for choice.
EFI firmware is supposed to not boot any more from optical medium but
to still boot from USB stick (because the partition table still points
to the system partition).


Have a nice day :)

Thomas


Reply to: