xorrisofs: Bootable
5.8 El Torito Bootable ISO images
=================================
The precondition for a bootable ISO image is to have in the ISO image
the files of a boot loader. The boot facilities of computers get
directed to such files, which usually execute further program files from
the ISO image. 'xorrisofs' can produce several kinds of boot block or
boot record, which become part of the ISO image, and get interpreted by
the according boot facility.
An *El Torito* boot record points the bootstrapping facility to a
boot catalog with one or more boot images, which are binary program
files stored in the ISO image. The content of the boot image files is
not in the scope of El Torito.
xorriso composes the boot catalog according to the boot image files
given and structured by options -b, -e, -el-torito-alt-boot, and
--efi-boot. Often it contains only one entry.
Normally the boot images are data files inside the ISO filesystem. By
special path "-interval:appended_partition_NNN:all::" it is possible to
refer to an appended partition. The number NNN gives the partition
number as used with the corresponding option -append_partition. E.g.:
-append_partition 2 0xef /tmp/efi.img
-e -interval:appended_partition_2:all::
El Torito gets interpreted by boot facilities PC-BIOS and EFI. Most
bootable GNU/Linux CDs are equipped with ISOLINUX or GRUB boot images
for PC-BIOS.
'xorrisofs' supports the example options out of the ISOLINUX wiki, the
options used in GRUB script grub-mkrescue, and the example in the
FreeBSD AvgLiveCD wiki.
For CD booting via boot facilities other than PC-BIOS and EFI, and
for booting from USB sticks or hard disks, see the next section about
the System Area.
-b iso_rr_path
Specify the boot image file which shall be mentioned in the current
entry of the El Torito boot catalog. It will be marked as suitable
for PC-BIOS.
With boot images from ISOLINUX and GRUB this option should be
accompanied by options -c , -no-emul-boot , -boot-load-size 4 ,
-boot-info-table.
-eltorito-boot iso_rr_path
Alias of -b.
-eltorito-alt-boot
Finalize the current El Torito boot catalog entry and begin a new
one. A boot image file and all its necessary options shall be
specified before option -eltorito-alt-boot. All further El Torito
boot options apply to the new catalog entry. Up to 32 catalog
entries are possible.
-e iso_rr_path
Specify the boot image file which shall be mentioned in the current
entry of the El Torito boot catalog. It will be marked as suitable
for EFI.
Option -e should be followed by option -no-emul-boot and no other
El Torito options before an eventual -eltorito-alt-boot.
--efi-boot iso_rr_path
Perform -eltorito-alt-boot, option -e with the given iso_rr_path,
-no-emul-boot, and again -eltorito-alt-boot. This gesture is used
for achieving EFI-bootability of the GRUB2 rescue CD.
-boot-load-size number
Set the number of 512-byte blocks to be loaded at boot time from
the boot image in the current catalog entry. Non-emulating BIOS
bootimages usually need a load size of 4. EFI boot images usually
get set the number of blocks occupied by the boot image file.
El Torito cannot represent load sizes higher than 65535.
-hard-disk-boot
Mark the boot image in the current catalog entry as emulated hard
disk. (Not suitable for any known boot loader.)
-no-emul-boot
Mark the boot image in the current catalog entry as not emulating
floppy or hard disk. (This is to be used with all known boot
loaders.)
If neither -hard-disk-boot nor -no-emul-boot is given, then the
boot image will be marked as emulating a floppy. (Not suitable for
any known boot loader.)
-eltorito-id text|56_hexdigits
Define the ID string of the boot catalog section where the boot
image will be listed. If the value consists of 56 characters
[0-9A-Fa-f] then it is converted into 28 bytes, else the first 28
characters become the ID string. The ID string of the first boot
image becomes the overall catalog ID. It is limited to 24
characters. Other id_strings become section IDs.
-eltorito-selcrit hexdigits
Define the Selection Criteria of the boot image. Up to 20 bytes
get read from the given characters [0-9A-Fa-f]. They get
attributed to the boot image entry in the catalog.
-boot-info-table
Overwrite bytes 8 to 63 in the current boot image. The information
will be supplied by xorriso in the course of image production:
Block address of the Primary Volume Descriptor, block address of
the boot image file, size of the boot image file.
--grub2-boot-info
Overwrite bytes 2548 to 2555 in the current boot image by the
address of that boot image. The address is written as 64 bit
little-endian number. It is the 2KB block address of the boot
image content, multiplied by 4, and then incremented by 5.
-c iso_rr_path
Set the address of the El Torito boot catalog file within the
image. This file address is not significant for the booting
PC-BIOS or EFI, but it may later be read by other programs in order
to learn about the available boot images.
-eltorito-catalog iso_rr_path
Alias of -c.
--boot-catalog-hide
Prevent the El Torito boot catalog from appearing as file in the
directory trees of the image.