Mkisofs: Difference between revisions

[unchecked revision][unchecked revision]
Content deleted Content added
New section "Mkisofs, its Clone, and its Emulator"
New section Options and input files
Line 34:
 
== Options and input files ==
A mkisofs run needs one or more input directories or files
and a name for the emerging filesystem image file.
There are options for standards compliance, for filesystem
attributes, and -most important here- for setting up boot entry
points.
 
'''-o DISKPATH''' sets the result file name. E.g. "bootable.iso".
 
'''-R''' enables normal Unix filenames and attributes by
Rock Ridge extension. '''-r''' does the same but also changes
access permissions to make all files readable by everybody.
 
'''-J''' enables MS-Windows UCS-2 names via Joliet extension.
 
'''-iso-level NUMBER''' sets the ISO 9660 Level of Interchange.
Level 1 allows only 8.3 filenames. Level 2 allows up to 30
characters in filenames. Level 3 allows data files larger than
4 GiB - 1.
 
'''-U''' violates ISO 9660 specs by allowing long case-sensitive
filenames outside of said extensions. If you know that the reader
can stand it, then this is a cheap way to get decent file names.
But expect standard readers to become confused.
 
'''-V TEXT''' sets the ISO 9660 Volume ID. It can be up to 32
characters long and is often used by automounters as name of
the mount directory for the filesystem.
 
'''-hide ISOPATH''' and '''-hide-joliet ISOPATH''' may be used
to exclude a data file from the directory trees while still
having its content in data blocks of the filesystem.
 
'''-c ISOPATH''' sets the filename for the El Torito Boot Catalog.
The file is created automatically if boot images are announced.
If option -c is missing, then the file will not show up in the
directory trees of the ISO filesystem.
 
'''-b ISOPATH''' announces a data file as El Torito boot image
for PC-[[BIOS]].
 
'''-e ISOPATH''' announces a data file as El Torito boot image
for [[EFI]]. This is not an option of original mkisofs,
but is understood by some variants of genisoimage and
by xorriso -as mkisofs.
 
'''-no-emul-boot''' and '''-hard-disk-boot''' choose emulation
modes other than the default of floppy emulation. Especially
-no-emul-boot is needed for boot images of ISOLINUX and GRUB2.
 
'''-boot-load-size NUMBER''' sets how many blocks of the boot
image are to be loaded by the BIOS. A usual number with
-no-emul-boot is 4.
 
'''-boot-info-table''' causes a Boot Info Table to be written
into the boot image. Needed for boot images of ISOLINUX and GRUB2.
 
'''-eltorito-alt-boot''' ends the range of '''-b''' or '''-e'''.
All further El Torito boot options will apply to the next boot
image given by -b or -e.
 
'''-G DISKPATH''' copies the content of a data file into the
System Area of the ISO filesystem. This is used to bring [[MBR]]
or other boot blocks into the filesystem to enable booting from
hard-disk-like devices or booting on exotic hardware.
 
'''-isohybrid-mbr DISKPATH''' copies a SYSLINUX/ISOLINUX MBR
template into the System Area and makes it execute the El Torito
boot image for BIOS. This is a speciality of xorriso -as mkisofs.
 
'''-isohybrid-gpt-basdat''' announces the boot image as [[GPT]]
partition for booting via [[EFI]] and as MBR partition.
This is a speciality of xorriso -as mkisofs.
 
'''-graft-points''' enables the interpretation of pathspecs
which give a target path in the ISO filesystem together with
the path of an input directory or file.
 
A program argument, which is not recognized as option (e.g. because it
does not begin by a dash "-") and is not parameter of an option,
is taken as path to an input directory or file. If it is a
directory, then its content gets merged with the content of
the root directory of the emerging ISO filesystem. If it is
a file of other type, then it gets copied into the root directory.
 
If enabled, then pathspecs get recognized by an equal sign
which separate target path from source path. E.g.
/boot/readme.txt=/home/me/texts/boot_iso_readme.txt
copies file
/home/me/texts/boot_iso_readme.txt
into the ISO filesystem as
/boot/readme.txt
 
== Using mkisofs ==