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

Re: EFI



Hi,

Guillermo Sosa wrote:
> Also in the folder "isolinux" I only edit the stdmenu.cfg (colors) and the
> "menu.cfg" replacing the labels "Label" (Change "Debian" for the name of "My
> Distro")

Debian ISOs boot on EFI via GRUB, not via ISOLINUX.
So you will have to modify the GRUB configuration in /boot/grub, too.

> and I rebuild the ISO.

By which program and options ?

The usual layout of Debian amd64 ISOs is achieved by the xorriso run which
is published in the ISO's file
  /.disk/mkisofs
(but without any of the necessary quotation marks around the Volume Id Text
which contains blanks).
With debian-live-10.2.0-amd64-xfce+nonfree.iso it is (plus quotation
marks and split into multiple lines):

  xorriso -outdev debian-live-10.2.0-amd64-xfce+nonfree.iso \
          -volid 'd-live nf 10.2.0 xf amd64' \
          -padding 0 \
          -compliance no_emul_toc \
          -map /w/work/nonfree/xfce/tmp/tmpYSgTOl / \
          -chmod 0755 / -- \
          -boot_image isolinux dir=/isolinux \
          -boot_image isolinux system_area=/usr/lib/ISOLINUX/isohdpfx.bin \
          -boot_image any next \
          -boot_image any efi_path=boot/grub/efi.img \
          -boot_image isolinux partition_entry=gpt_basdat

The last three lines cause the the file /boot/grub/efi.img to be exposed
as El Torito image for EFI and as EFI System Partition.

The directory /w/work/.../tmpYSgTOl will in your case be the root of the
unpacked and modified ISO tree.

Instead of /usr/lib/ISOLINUX/isohdpfx.bin you could also use the first
512 bytes of the original ISO. (ISOLINUX is not developed any more. So
it is not to be expected that your installed isohdpfx.bin is incompatible
with /isolinux/isolinux.bin in the ISO. But neat would be to use the
MBR code that comes with the ISO to ensure that it properly loads and
executes isolinux.bin.)

I wrote a wiki article about determining and replaying the boot equipment
of Debian ISOs:
  https://wiki.debian.org/RepackBootableISO
It shows among other things that most ISOs are produced via xorriso's
emulation of mkisofs options. Debian Live is a rare exception by using
xorriso's native command set.
/.disk/mkisofs was not present in older Debian Live ISOs. The article
shows how to let xorriso tell the necessary mkisofs compatible options
to replay the boot equipment of such an ISO. (You'd have to add a few
mkisofs options to put the file tree into the ISO and to set the file
name for the ISO image.)


Have a nice day :)

Thomas


Reply to: