From d775f22efc909998aa654b019bf1034dce16aee0 Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Mon, 18 Jun 2012 08:26:06 +0000 Subject: [PATCH] Documented -as mkisofs options *-boot-part --- libisoburn/trunk/xorriso/emulators.c | 7 +- libisoburn/trunk/xorriso/xorriso_timestamp.h | 2 +- libisoburn/trunk/xorriso/xorrisofs.1 | 49 +++++- libisoburn/trunk/xorriso/xorrisofs.info | 165 ++++++++++++------- libisoburn/trunk/xorriso/xorrisofs.texi | 61 ++++++- 5 files changed, 201 insertions(+), 83 deletions(-) diff --git a/libisoburn/trunk/xorriso/emulators.c b/libisoburn/trunk/xorriso/emulators.c index 6b68bac0..16bc232b 100644 --- a/libisoburn/trunk/xorriso/emulators.c +++ b/libisoburn/trunk/xorriso/emulators.c @@ -823,9 +823,10 @@ int Xorriso_genisofs_help(struct XorrisO *xorriso, int flag) " -mipsel-boot FILE Set mipsel boot image name (relative to image root)", " -B FILES, -sparc-boot FILES Set sparc boot image names", " -sparc-label label text Set sparc boot disk label", - -/* >>> -chrp-boot-part -prep-boot-part -efi-boot-part */ - +" -efi-boot-part DISKFILE|--efi-boot-image", +" Set data source for EFI System Partition", +" -chrp-boot-part Mark ISO image size by MBR partition type 0x41", +" -prep-boot-part DISKFILE Set data source for MBR partition type 0x96", " -append_partition NUMBER TYPE FILE", " Append FILE after image. TYPE is hex: 0x..", " --modification-date=YYYYMMDDhhmmsscc", diff --git a/libisoburn/trunk/xorriso/xorriso_timestamp.h b/libisoburn/trunk/xorriso/xorriso_timestamp.h index 4563fbbe..886b4502 100644 --- a/libisoburn/trunk/xorriso/xorriso_timestamp.h +++ b/libisoburn/trunk/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2012.06.15.085732" +#define Xorriso_timestamP "2012.06.18.082701" diff --git a/libisoburn/trunk/xorriso/xorrisofs.1 b/libisoburn/trunk/xorriso/xorrisofs.1 index b61aee7a..39931c95 100644 --- a/libisoburn/trunk/xorriso/xorrisofs.1 +++ b/libisoburn/trunk/xorriso/xorrisofs.1 @@ -9,7 +9,7 @@ .\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) -.TH XORRISOFS 1 "Version 1.2.3, Jun 14, 2012" +.TH XORRISOFS 1 "Version 1.2.3, Jun 17, 2012" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -890,19 +890,31 @@ Alias of \-c. Prevent the El Torito boot catalog from appearing as file in the directory trees of the image. .TP -.B System Area, MBR, other boot blocks: +.B System Area, MBR, GPT, APM, other boot blocks: .PP The first 16 blocks of an ISO image are the System Area. It is reserved for system dependent boot software. This may be the -CD boot facilities of exotic hardware architectures or it may be -a MBR for booting via PC\-BIOS from USB stick or hard disk. +boot facilities and partition tables of various hardware architectures. .br A \fBMBR\fR (Master Boot Record) contains boot code and a partition table. -It does not hamper El Torito booting from CDROM. +It is read by PC\-BIOS when booting from USB stick or hard disk, +and by PowerPC CHRP or PReP when booting. +An MBR partiton with type 0xee indicates the presence of GPT. .br -\fBxorrisofs\fR supports boot facilities other than PC\-BIOS: +A \fBGPT\fR (GUID Partition Table) marks partitions in a more modern way. +It is read by EFI when booting from USB stick or hard disk, and may be used +for finding and mounting a HFS+ partition inside the ISO image. +.br +An \fBAPM\fR (Apple Partition Map) marks the HFS+ partition. +It is read by Macs for booting and for mounting. +.br +MBR, GPT and APM are combinable. APM occupies the first 8 bytes of +MBR boot code. All three do not hamper El Torito booting from CDROM. +.br +\fBxorrisofs\fR supports further boot facilities: MIPS Big Endian (SGI), MIPS Little Endian (DEC), SUN SPARC. -Those are mutually not combinable and also not combinable with MBR. +Those are mutually not combinable and also not combinable with MBR, GPT, +or APM. .br .TP \fB\-G\fR disk_path @@ -993,6 +1005,29 @@ or a hexadecimal number between 0x00 and 0xff. Not all those numbers will yield usable results. For a list of codes search the Internet for "Partition Types" or run fdisk command "L". .TP +\fB\-efi-boot-part\fR disk_path +Copy a file from disk into the emerging ISO image and mark it by a GPT entry as +EFI System Partition. EFI boot firmware is supposed to use a FAT filesystem +image in such a partition for booting from USB stick or hard disk. +.br +Instead of a disk_path, the word \-\-efi\-boot\-image may be given. +It exposes in GPT the content of the first El Torito EFI boot image as +EFI system partition. EFI boot images are introduced by options \-e or +\-\-efi\-boot. +The affected EFI boot image cannot show up in HFS+ because it is stored +outside the HFS+ partition. +.TP +\fB\-chrp-boot-part\fR +Mark the block range of the whole emerging ISO image as MBR partition of type +0x41. This is not compatible with any other feature that produces MBR +partition entries. It makes GPT unrecognizable. +.TP +\fB\-prep-boot-part\fR disk_path +Copy a file from disk into the emerging ISO image and mark it by a MBR +partition entry of type 0x96. PReP boot firmware is supposed to read +the content of the partition as single ELF executable file. +This option is compatible with other MBR partitions and with GPT. +.TP \fB\-mips-boot\fR iso_rr_path Declare a data file in the image to be a MIPS Big Endian boot file and cause production of a MIPS Big Endian Volume diff --git a/libisoburn/trunk/xorriso/xorrisofs.info b/libisoburn/trunk/xorriso/xorrisofs.info index c31553c0..b1cda18e 100644 --- a/libisoburn/trunk/xorriso/xorrisofs.info +++ b/libisoburn/trunk/xorriso/xorrisofs.info @@ -167,7 +167,7 @@ File: xorrisofs.info, Node: Options, Next: Examples, Prev: Xorriso, Up: Top * SetHide:: Settings for file hiding * ImageId:: ISO image ID strings * Bootable:: El Torito Bootable ISO images -* SystemArea:: System Area, MBR, other boot blocks +* SystemArea:: System Area, MBR, GPT, APM, other boot blocks * Charset:: Character sets * Jigdo:: Jigdo Template Extraction * Miscellaneous:: Miscellaneous options @@ -884,18 +884,26 @@ Sytem Area.  File: xorrisofs.info, Node: SystemArea, Next: Charset, Prev: Bootable, Up: Options -5.9 System Area, MBR, other boot blocks -======================================= +5.9 System Area, MBR, GPT, APM, other boot blocks +================================================= The first 16 blocks of an ISO image are the System Area. It is -reserved for system dependent boot software. This may be the CD boot -facilities of exotic hardware architectures or it may be a MBR for -booting via PC-BIOS from USB stick or hard disk. +reserved for system dependent boot software. This may be the boot +facilities and partition tables of various hardware architectures. A *MBR* (Master Boot Record) contains boot code and a partition table. -It does not hamper El Torito booting from CDROM. -`xorrisofs' supports boot facilities other than PC-BIOS: MIPS Big -Endian (SGI), MIPS Little Endian (DEC), SUN SPARC. Those are mutually -not combinable and also not combinable with MBR. +It is read by PC-BIOS when booting from USB stick or hard disk, and by +PowerPC CHRP or PReP when booting. An MBR partiton with type 0xee +indicates the presence of GPT. +A *GPT* (GUID Partition Table) marks partitions in a more modern way. +It is read by EFI when booting from USB stick or hard disk, and may be +used for finding and mounting a HFS+ partition inside the ISO image. +An *APM* (Apple Partition Map) marks the HFS+ partition. It is read by +Macs for booting and for mounting. +MBR, GPT and APM are combinable. APM occupies the first 8 bytes of MBR +boot code. All three do not hamper El Torito booting from CDROM. +`xorrisofs' supports further boot facilities: MIPS Big Endian (SGI), +MIPS Little Endian (DEC), SUN SPARC. Those are mutually not combinable +and also not combinable with MBR, GPT, or APM. -G disk_path Copy at most 32768 bytes from the given disk file to the very @@ -983,6 +991,29 @@ not combinable and also not combinable with MBR. usable results. For a list of codes search the Internet for "Partition Types" or run fdisk command "L". +-efi-boot-part disk_path + Copy a file from disk into the emerging ISO image and mark it by a + GPT entry as EFI System Partition. EFI boot firmware is supposed + to use a FAT filesystem image in such a partition for booting from + USB stick or hard disk. + Instead of a disk_path, the word --efi-boot-image may be given. + It exposes in GPT the content of the first El Torito EFI boot + image as EFI system partition. EFI boot images are introduced by + options -e or --efi-boot. The affected EFI boot image cannot show + up in HFS+ because it is stored outside the HFS+ partition. + +-chrp-boot-part + Mark the block range of the whole emerging ISO image as MBR + partition of type 0x41. This is not compatible with any other + feature that produces MBR partition entries. It makes GPT + unrecognizable. + +-prep-boot-part disk_path + Copy a file from disk into the emerging ISO image and mark it by a + MBR partition entry of type 0x96. PReP boot firmware is supposed + to read the content of the partition as single ELF executable file. + This option is compatible with other MBR partitions and with GPT. + -mips-boot iso_rr_path Declare a data file in the image to be a MIPS Big Endian boot file and cause production of a MIPS Big Endian Volume Header. This is @@ -1613,7 +1644,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * --boot-catalog-hide Hide El Torito boot catalog: Bootable. (line 95) * --efi-boot El Torito EFI boot image: Bootable. (line 58) -* --embedded-boot Fill System Area e.g. by MBR: SystemArea. (line 27) +* --embedded-boot Fill System Area e.g. by MBR: SystemArea. (line 35) * --emul-toc enable table-of-content emulation: SetProduct. (line 35) * --for_backup Enable backup fidelity: SetExtras. (line 67) * --hardlinks Recording of hardlink relations: SetExtras. (line 92) @@ -1630,7 +1661,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T (line 84) * --old-root-no-md5 disable MD5 with -old-root: SetInsert. (line 105) * --protective-msdos-label Patch System Area partition table: SystemArea. - (line 41) + (line 49) * --quoted_path_list read pathspecs from disk file: SetInsert. (line 13) * --scdbackup_tag Recording of MD5 checksum: SetExtras. (line 101) @@ -1642,10 +1673,10 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -abstract set Abstract File path: ImageId. (line 66) * -allow-lowercase lowercase in ISO file names: SetCompl. (line 46) * -append_partition Append MBR partition after image: SystemArea. - (line 86) + (line 94) * -appid set Application Id: ImageId. (line 46) * -b El Torito PC-BIOS boot image: Bootable. (line 32) -* -B SUN SPARC boot images: SystemArea. (line 116) +* -B SUN SPARC boot images: SystemArea. (line 147) * -biblio set Biblio File path: ImageId. (line 72) * -boot-info-table Patch El Torito boot image: Bootable. (line 80) * -boot-load-size El Torito boot image load size: Bootable. (line 63) @@ -1656,6 +1687,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -checksum_algorithm_iso choose .jigdo checksums: Jigdo. (line 80) * -checksum_algorithm_template choose .template checksums: Jigdo. (line 87) +* -chrp-boot-part CHRP partition: SystemArea. (line 122) * -copyright set Copyright File path: ImageId. (line 77) * -D allow deep directory hierachies: SetExtras. (line 31) * -d omit trailing dot in ISO file names: SetCompl. (line 56) @@ -1666,6 +1698,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -disallow_dir_id_ext enforce ISO level 1 directory names: SetCompl. (line 24) * -e El Torito EFI boot image: Bootable. (line 50) +* -efi-boot-part EFI boot partition: SystemArea. (line 111) * -eltorito-alt-boot begin next boot catalog entry: Bootable. (line 43) * -eltorito-boot El Torito PC-BIOS boot image: Bootable. (line 40) @@ -1678,8 +1711,8 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -follow-links follow symbolic links on disk: SetInsert. (line 28) * -full-iso9660-filenames allow 31 characters in ISO file names: SetCompl. (line 66) -* -G Fill System Area e.g. by MBR: SystemArea. (line 17) -* -generic-boot Fill System Area e.g. by MBR: SystemArea. (line 24) +* -G Fill System Area e.g. by MBR: SystemArea. (line 25) +* -generic-boot Fill System Area e.g. by MBR: SystemArea. (line 32) * -graft-points enable target=source pathspecs: SetInsert. (line 31) * -hard-disk-boot El Torito boot image emulation: Bootable. (line 68) * -help list supported options: Miscellaneous. (line 20) @@ -1705,7 +1738,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T (line 17) * -iso-level define ISO 9660 limitations: SetCompl. (line 7) * -isohybrid-mbr Install ISOLINUX isohybrid MBR: SystemArea. - (line 30) + (line 38) * -J enable production of Joliet directory tree: SetExtras. (line 110) * -jigdo-exclude add exclusion pattern for .md5: Jigdo. (line 59) * -jigdo-force-md5 add check pattern for .md5: Jigdo. (line 52) @@ -1725,8 +1758,8 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -max-iso9660-filenames allow 37 characters in ISO file names: SetCompl. (line 69) * -md5-list set path of readable .md5: Jigdo. (line 73) -* -mips-boot MIPS Big Endian boot image: SystemArea. (line 103) -* -mipsel-boot MIPS Little Endian boot image: SystemArea. (line 110) +* -mips-boot MIPS Big Endian boot image: SystemArea. (line 134) +* -mipsel-boot MIPS Little Endian boot image: SystemArea. (line 141) * -N omit version number in ISO file names: SetCompl. (line 73) * -no-emul-boot El Torito boot image emulation: Bootable. (line 72) * -no-pad do not add zeros to ISO tree: SetProduct. (line 76) @@ -1744,12 +1777,13 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -p set Preparer Id: ImageId. (line 54) * -p set Publisher Id: ImageId. (line 30) * -pad add 300 KiB of zeros to ISO tree: SetProduct. (line 69) -* -partition_cyl_align Image size alignment: SystemArea. (line 75) -* -partition_hd_cyl MBR heads per cylinder: SystemArea. (line 58) +* -partition_cyl_align Image size alignment: SystemArea. (line 83) +* -partition_hd_cyl MBR heads per cylinder: SystemArea. (line 66) * -partition_offset Make mountable by partition 1: SystemArea. - (line 46) -* -partition_sec_hd MBR sectors per head: SystemArea. (line 62) + (line 54) +* -partition_sec_hd MBR sectors per head: SystemArea. (line 70) * -path-list read pathspecs from disk file: SetInsert. (line 8) +* -prep-boot-part PReP partition: SystemArea. (line 128) * -preparer set Preparer Id: ImageId. (line 63) * -prev-session set path for loading existing ISO image: Loading. (line 22) @@ -1767,8 +1801,8 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -root redirect ISO root directory: SetInsert. (line 64) * -rr_reloc_dir set deep directory relocation target: SetExtras. (line 47) -* -sparc-boot SUN SPARC boot images: SystemArea. (line 128) -* -sparc-label SUN Disk Label text: SystemArea. (line 131) +* -sparc-boot SUN SPARC boot images: SystemArea. (line 159) +* -sparc-label SUN Disk Label text: SystemArea. (line 162) * -sysid set System Id: ImageId. (line 49) * -transparent-compression enable recognition of zisofs files: SetInsert. (line 61) @@ -1796,6 +1830,7 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Abstract File, set path, -abstract: ImageId. (line 66) * ACL, record and load, --acl: SetExtras. (line 71) +* APM, _definition: SystemArea. (line 16) * Application Id, set, -A, -appid: ImageId. (line 38) * Backup, enable fidelity, --for_backup: SetExtras. (line 67) * Biblio File, set path, -biblio: ImageId. (line 72) @@ -1812,20 +1847,23 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top (line 80) * Bootability, control, --efi-boot: Bootable. (line 58) * Bootability, control, -b, -eltorito-boot: Bootable. (line 32) -* Bootability, control, -B, -sparc-boot: SystemArea. (line 116) +* Bootability, control, -B, -sparc-boot: SystemArea. (line 147) * Bootability, control, -e: Bootable. (line 50) -* Bootability, control, -mips-boot: SystemArea. (line 103) -* Bootability, control, -mipsel-boot: SystemArea. (line 110) +* Bootability, control, -mips-boot: SystemArea. (line 134) +* Bootability, control, -mipsel-boot: SystemArea. (line 141) * Bootability, fill System Area e.g. by MBR, -G, --embedded-boot, -generic-boot: SystemArea. - (line 17) + (line 25) +* Bootability, for CHRP, -chrp-boot-part: SystemArea. (line 122) +* Bootability, for EFI, -efi-boot-part: SystemArea. (line 111) +* Bootability, for PReP, -prep-boot-part: SystemArea. (line 128) * Bootability, install ISOLINUX isohybrid MBR, -isohybrid-mbr: SystemArea. - (line 30) + (line 38) * Bootability, next entry, -eltorito-alt-boot: Bootable. (line 43) * Bootability, no boot image emulation, -no-emul-boot: Bootable. (line 72) * Bootability, patch System Area partition table, --protective-msdos-label: SystemArea. - (line 41) -* Bootability, SUN Disk Label text, -sparc-label: SystemArea. (line 131) + (line 49) +* Bootability, SUN Disk Label text, -sparc-label: SystemArea. (line 162) * Bugs, reporting: Bugreport. (line 6) * Character Set, for disk file names, -input-charset: Charset. (line 17) @@ -1847,6 +1885,7 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * El Torito, _definition: Bootable. (line 13) * Examples: Examples. (line 6) * Forced output, control, --stdio_sync: SetProduct. (line 25) +* GPT, _definition: SystemArea. (line 13) * HFS+, _definition: Standards. (line 32) * HFS+, enables production: SetExtras. (line 124) * HFS+, issue blessing ppc_bootdir, -hfs-bless: SetExtras. (line 158) @@ -1859,7 +1898,7 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Hiding, from ISO and Rock Ridge, -hide-list: SetHide. (line 16) * Hiding, from Joliet, -hide-joliet: SetHide. (line 20) * Hiding, from Joliet, -hide-joliet-list: SetHide. (line 25) -* Image size, alignment, -partition_cyl_align: SystemArea. (line 75) +* Image size, alignment, -partition_cyl_align: SystemArea. (line 83) * Incremental insertion, disable disk ino, --old-root-no-ino: SetInsert. (line 84) * Incremental insertion, disable MD5, --old-root-no-md5: SetInsert. @@ -1909,14 +1948,14 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Joliet, enable, -J, -joliet: SetExtras. (line 110) * Links, follow on disk, -f, -follow-links: SetInsert. (line 24) * Links, record and load hard links, --hardlinks: SetExtras. (line 92) -* MBR, _definition: SystemArea. (line 10) -* MBR, append partition, -append_partition: SystemArea. (line 86) -* MBR, sectors per head, -partition_sec_hd: SystemArea. (line 58) +* MBR, _definition: SystemArea. (line 9) +* MBR, append partition, -append_partition: SystemArea. (line 94) +* MBR, sectors per head, -partition_sec_hd: SystemArea. (line 66) * MD5, record and load, --md5: SetExtras. (line 84) * Message output, redirect stderr, -log-file: Miscellaneous. (line 28) * Message output, suppress, -quiet: Miscellaneous. (line 24) * Mountability, by non-trivial partition 1, -partition_offset: SystemArea. - (line 46) + (line 54) * Options, list, -help: Miscellaneous. (line 20) * Output file, set address, -o, -output: SetProduct. (line 8) * Padding, 300 KiB, -pad: SetProduct. (line 69) @@ -1964,31 +2003,31 @@ Node: Standards1541 Node: Insert3732 Node: Xorriso5570 Node: Options6709 -Node: Loading7426 -Node: SetInsert9722 -Node: SetProduct14138 -Node: SetCompl17845 -Node: SetExtras20441 -Node: SetHide27363 -Node: ImageId28671 -Node: Bootable32176 -Node: SystemArea36241 -Node: Charset42575 -Node: Jigdo43601 -Node: Miscellaneous47868 -Node: Examples49241 -Node: ExSimple49727 -Node: ExGraft50206 -Node: ExMkisofs51453 -Node: ExGrowisofs52706 -Node: ExIncBackup53878 -Node: ExIncBckAcc56986 -Node: ExBootable58662 -Node: Files60754 -Node: Seealso61828 -Node: Bugreport62484 -Node: Legal63065 -Node: CommandIdx63960 -Node: ConceptIdx76745 +Node: Loading7436 +Node: SetInsert9732 +Node: SetProduct14148 +Node: SetCompl17855 +Node: SetExtras20451 +Node: SetHide27373 +Node: ImageId28681 +Node: Bootable32186 +Node: SystemArea36251 +Node: Charset44286 +Node: Jigdo45312 +Node: Miscellaneous49579 +Node: Examples50952 +Node: ExSimple51438 +Node: ExGraft51917 +Node: ExMkisofs53164 +Node: ExGrowisofs54417 +Node: ExIncBackup55589 +Node: ExIncBckAcc58697 +Node: ExBootable60373 +Node: Files62465 +Node: Seealso63539 +Node: Bugreport64195 +Node: Legal64776 +Node: CommandIdx65671 +Node: ConceptIdx78675  End Tag Table diff --git a/libisoburn/trunk/xorriso/xorrisofs.texi b/libisoburn/trunk/xorriso/xorrisofs.texi index 7c0234e0..97274131 100644 --- a/libisoburn/trunk/xorriso/xorrisofs.texi +++ b/libisoburn/trunk/xorriso/xorrisofs.texi @@ -50,7 +50,7 @@ @c man .\" First parameter, NAME, should be all caps @c man .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection @c man .\" other parameters are allowed: see man(7), man(1) -@c man .TH XORRISOFS 1 "Version 1.2.3, Jun 14, 2012" +@c man .TH XORRISOFS 1 "Version 1.2.3, Jun 17, 2012" @c man .\" Please adjust this date whenever revising the manpage. @c man .\" @c man .\" Some roff macros, for reference: @@ -272,7 +272,7 @@ See EXAMPLES. * SetHide:: Settings for file hiding * ImageId:: ISO image ID strings * Bootable:: El Torito Bootable ISO images -* SystemArea:: System Area, MBR, other boot blocks +* SystemArea:: System Area, MBR, GPT, APM, other boot blocks * Charset:: Character sets * Jigdo:: Jigdo Template Extraction * Miscellaneous:: Miscellaneous options @@ -1236,23 +1236,37 @@ Prevent the El Torito boot catalog from appearing as file in the directory trees of the image. @end table @c man .TP -@c man .B System Area, MBR, other boot blocks: +@c man .B System Area, MBR, GPT, APM, other boot blocks: @node SystemArea, Charset, Bootable, Options -@section System Area, MBR, other boot blocks +@section System Area, MBR, GPT, APM, other boot blocks @c man .PP @cindex System Area, _definition The first 16 blocks of an ISO image are the System Area. It is reserved for system dependent boot software. This may be the -CD boot facilities of exotic hardware architectures or it may be -a MBR for booting via PC-BIOS from USB stick or hard disk. +boot facilities and partition tables of various hardware architectures. @* @cindex MBR, _definition A @strong{MBR} (Master Boot Record) contains boot code and a partition table. -It does not hamper El Torito booting from CDROM. +It is read by PC-BIOS when booting from USB stick or hard disk, +and by PowerPC CHRP or PReP when booting. +An MBR partiton with type 0xee indicates the presence of GPT. @* -@command{xorrisofs} supports boot facilities other than PC-BIOS: +@cindex GPT, _definition +A @strong{GPT} (GUID Partition Table) marks partitions in a more modern way. +It is read by EFI when booting from USB stick or hard disk, and may be used +for finding and mounting a HFS+ partition inside the ISO image. +@* +@cindex APM, _definition +An @strong{APM} (Apple Partition Map) marks the HFS+ partition. +It is read by Macs for booting and for mounting. +@* +MBR, GPT and APM are combinable. APM occupies the first 8 bytes of +MBR boot code. All three do not hamper El Torito booting from CDROM. +@* +@command{xorrisofs} supports further boot facilities: MIPS Big Endian (SGI), MIPS Little Endian (DEC), SUN SPARC. -Those are mutually not combinable and also not combinable with MBR. +Those are mutually not combinable and also not combinable with MBR, GPT, +or APM. @* @table @asis @sp 1 @@ -1363,6 +1377,35 @@ or a hexadecimal number between 0x00 and 0xff. Not all those numbers will yield usable results. For a list of codes search the Internet for "Partition Types" or run fdisk command "L". @c man .TP +@item -efi-boot-part disk_path +@kindex -efi-boot-part EFI boot partition +@cindex Bootability, for EFI, -efi-boot-part +Copy a file from disk into the emerging ISO image and mark it by a GPT entry as +EFI System Partition. EFI boot firmware is supposed to use a FAT filesystem +image in such a partition for booting from USB stick or hard disk. +@* +Instead of a disk_path, the word @minus{}@minus{}efi-boot-image may be given. +It exposes in GPT the content of the first El Torito EFI boot image as +EFI system partition. EFI boot images are introduced by options -e or +@minus{}@minus{}efi-boot. +The affected EFI boot image cannot show up in HFS+ because it is stored +outside the HFS+ partition. +@c man .TP +@item -chrp-boot-part +@kindex -chrp-boot-part CHRP partition +@cindex Bootability, for CHRP, -chrp-boot-part +Mark the block range of the whole emerging ISO image as MBR partition of type +0x41. This is not compatible with any other feature that produces MBR +partition entries. It makes GPT unrecognizable. +@c man .TP +@item -prep-boot-part disk_path +@kindex -prep-boot-part PReP partition +@cindex Bootability, for PReP, -prep-boot-part +Copy a file from disk into the emerging ISO image and mark it by a MBR +partition entry of type 0x96. PReP boot firmware is supposed to read +the content of the partition as single ELF executable file. +This option is compatible with other MBR partitions and with GPT. +@c man .TP @item -mips-boot iso_rr_path @kindex -mips-boot MIPS Big Endian boot image @cindex Bootability, control, -mips-boot