You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
libisoburn/xorriso/xorrisofs.1

1577 lines
56 KiB
Groff

.\" Hey, EMACS: -*- nroff -*-
.\"
.\" IMPORTANT NOTE:
.\"
.\" The original of this file is kept in xorriso/xorrisofs.texi
.\" This here was generated by program xorriso/make_xorriso_1
.\"
.\"
.\" 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.1, Mar 14, 2012"
.\" Please adjust this date whenever revising the manpage.
.\"
.\" Some roff macros, for reference:
.\" .nh disable hyphenation
.\" .hy enable hyphenation
.\" .ad l left justify
.\" .ad b justify to both left and right margins
.\" .nf disable filling
.\" .fi enable filling
.\" .br insert line break
.\" .sp <n> insert n+1 empty lines
.\" for manpage-specific macros, see man(7)
.nh
.SH NAME
xorrisofs \- Emulation of ISO 9660 program mkisofs by program xorriso
.SH SYNOPSIS
.B xorrisofs
[ options ] [-o filename ] pathspec [pathspecs ...]
.br
.SH DESCRIPTION
.PP
\fBxorrisofs\fR
produces Rock Ridge enhanced ISO 9660 filesystems and add\-on sessions to
such filesystems. Optionally it can produce Joliet directory trees too.
.br
.PP
\fBxorrisofs\fR understands options of program mkisofs from cdrtools by
Joerg Schilling.
Its implementation is part of program xorriso which shares no source
code with cdrtools.
.SS
\fBISO 9660, Rock Ridge, Joliet:\fR
.br
\fBISO 9660\fR
(aka \fBECMA\-119\fR) is a read\-only filesystem that is mainly used for
optical media CD, DVD, BD, but may also reside on other storage devices like
disk files, USB sticks or disk partitions. It is widely readable by many
operating systems and by boot facilities of personal computers.
.br
ISO 9660 describes directories and data files by
very restricted filenames with no distinction of upper case and lower case.
Its metadata do not comply to fundamental POSIX specifications.
.br
\fBRock Ridge\fR
is the name of a set of additional information which enhance
an ISO 9660 filesystem so that it can represent a POSIX compliant filesystem
with ownership, access permissions, symbolic links, and other attributes.
Rock Ridge allows filenames of up to 255 bytes and paths of up to
1024 bytes.
.br
Rock Ridge information is produced unconditionally with any \fBxorrisofs\fR
image.
.br
\fBJoliet\fR
is the name of an additional directory tree which provides
filenames up to 64 characters encoded as UTF\-16.
A Joliet tree is mainly interesting for reading the ISO image by
operating systems of Microsoft Corporation.
Production of this directory tree may be enabled by option \-J.
.br
\fBISO 9660:1999\fR
is the name of an additional directory tree which provides longer
filenames. It allows single file names to have up to 207 characters.
It might be of use with some older computer system boot
facilities which read neither Rock Ridge nor Joliet but
need longer filenames nevertheless.
Production of this directory tree may be enabled by option \-iso\-level 4.
.SS
.B Inserting files into the ISO image:
.PP
\fBxorrisofs\fR deals with two kinds of file addresses:
.br
\fBdisk_path\fR
is a path to an object in the local filesystem tree.
.br
\fBiso_rr_path\fR
is the Rock Ridge address of a file object in the ISO image. (Do not
confuse with the lowlevel ISO 9660 names visible if Rock Ridge gets ignored.)
.br
.PP
A program argument is handled as a \fBpathspec\fR, if it is not
recognized as original mkisofs option or additional \fBxorrisofs\fR option.
A pathspec depicts an input file object by a disk_path.
If option \-graft\-points is not present, then the behavior depends on the
file type of disk_path. Directories get merged with the /\-directory of the
ISO image. Files of other types get copied into the /\-directory.
.br
If \-graft\-points is present then each pathspec gets split at the first
occurence of the =\-character.
The part before the = is taken as \fBtarget\fR, i.e. the iso_rr_path for
the file object in the ISO image. The part after the first = is taken
as \fBsource\fR, i.e. the disk_path of the input object.
.br
It is possible to make =\-characters part of the iso_rr_path by preceding
them with a \\\-character. The same must be done for \\\-characters which
shall be part of the iso_rr_path.
.br
.PP
If the source part of the pathspec leads to a directory, then all files
underneath this directory get inserted into the image, too.
It is possible to exclude particular files from being inserted
by help of option \-m.
.br
In case that target already exists, the following rules apply:
Directories and other files may overwrite existing non\-directories.
Directories get merged with existing directories.
Non\-directories may not overwrite existing directories.
.SS
\fBRelation to program xorriso:\fR
.br
\fBxorrisofs\fR is actually a command mode of program \fBxorriso\fR,
which gets entered either by xorriso command "\-as mkisofs" or by
starting the program by one of the names "xorrisofs", "mkisofs",
"genisoimage", or "genisofs".
.br
This command mode can be left by argument "\-\-" which leads
to generic xorriso command mode. See \fBman xorriso\fR for its description.
.br
.PP
xorriso performs image reading and writing by help of libburn, which is
mainly intended for optical drives, but also operates on all POSIX
file types except directories.
.br
The program messages call any image file a "drive". File types which are not
supported for reading are reported as "blank". The reported free media
space may be quite fictional.
.br
Nevertheless \fBxorrisofs\fR does not operate directly on optical drives,
but rather forces libburn to regard them as general device files.
So for writing of sequential optical media (CD, DVD\-R, DVD+R, BD\-R)
one will have to use a burn program. E.g the cdrecord emulation of xorriso.
See EXAMPLES.
.SS
.br
.SH OPTIONS
.br
.PP
.TP
.B Image loading:
.PP
The following options control loading of an existing ISO image for the purpose
of preparing a suitable add\-on session.
If they are missing then a new image is composed from scratch.
.TP
\fB\-M\fR disk_path
Set the path from which to load the existing ISO image directory tree
on which to base the upcomming directory tree as add\-on session.
The path must lead to a random\-access readable file object.
On GNU/Linux: regular data files or block device files.
.br
A special kind of pseudo disk_path has the form "/dev/fd/"number.
It depicts the open file descriptor with the given number, regardless whether
the operating system supports this feature by file nodes in /dev/fd or not.
E.g. /dev/fd/3 is file descriptor 3 which was opened by the program that
later started xorriso.
.TP
\fB\-prev-session\fR disk_path
Alias of \-M.
.TP
\fB\-dev\fR disk_path
Alias of \-M.
.TP
\fB\-C\fR last_session_start,next_writeable_address
Set the 2 KiB block address last_session_start from where to read the
ISO image out of the file given by option \-M.
.br
Separated by a comma, set the next_writeable_address to which the
add\-on session will finally be written. Decisive is actually the block
address which the intended readers will have to use as superblock address
on the intended medium.
.br
Both values can be inquired from optical media by help of burn programs
and cdrecord option \-msinfo. xorriso itself can obtain it in its
cdrecord emulation. Do not let it load the drive, but rather do this manually
or by a program like dd which reads a few bytes. Only then it is sure that
the device driver knows the true readable size of the medium.
.br
dd if=/dev/... count=1 >/dev/null 2>&1
.br
values=$(xorriso \-as cdrecord dev=/dev/... \-msinfo)
.br
echo $values
.br
Option \-C may be used without option \-M to create an ISO image from
scratch and prepare it for being finally written to a block address
other than 0. Parameter last_session_start must then be set to 0.
.TP
\fB\-cdrecord-params\fR last_session_start,next_writeable_address
Alias of \-C.
.TP
.B Settings for file insertion:
.TP
\fB\-path-list\fR disk_path
Read pathspecs line\-by\-line from disk_file and insert the depicted file
objects into the ISO image. If disk_path is "\-" then read the pathspecs
from standard input.
.TP
\fB--quoted_path_list\fR disk_path
Like option \-path\-list but reading quoted words rather than plain lines.
Whitespace outside of quotes will be discarded. On the other hand it is
possible to represent pathspecs which contain newline characters.
.br
The double quotation mark " and the single quotation mark ' can be used to
enclose whitespace and make it part of pathspecs. Each mark
type can enclose the marks of the other type. A trailing backslash \\ outside
quotations or an open quotation cause the next input line to be appended.
.TP
\fB\-f\fR
.br
Resolve symbolic links on disk rather than storing them as symbolic
links in the ISO image.
.TP
\fB\-follow-links\fR
Alias of \-f.
.TP
\fB\-graft-points\fR
Enable interpretation of input file pathspecs as combination of iso_rr_path
and disk_path, separated by a =\-character.
.TP
\fB\-m\fR disk_pattern
Exclude files from being inserted into the image. Silently ignored are
those files of which the disk_path matches the given shell parser pattern.
If no /\-character is part of the pattern, then it gets matched against
the leaf name of the disk file.
.br
It is possible to give more than one \-m option.
.TP
\fB\-exclude\fR
Alias of \-m.
.TP
\fB\-x\fR
.br
Alias of \-m.
.TP
\fB\-old-exclude\fR
Alias of \-m.
.TP
\fB\-exclude-list\fR disk_path
Perform \-m using each line out of file disk_path as argument disk_pattern.
.TP
\fB\-z\fR
.br
Enable recognition and proper processing of zisofs compressed files
as produced by program mkzftree. These files will get equipped with the
necessary meta data so that a Linux kernel will recognize them and
deliver their content in uncompressed form.
.TP
\fB\-transparent-compression\fR
Alias of \-z.
.TP
\fB\-root\fR iso_rr_path
Insert all files under the given iso_rr_path. If option \-graft\-points is given,
then iso_rr_path is prepended to each target part of a pathspec.
.br
The default for \-root is "/".
.TP
\fB\-old-root\fR iso_rr_path
Enable incremental insertion of files into the loaded image.
The effective target and source addresses of given pathspecs get compared
whether the target already exists in the ISO image and is still identical
to the source on disk. Metadata in the ISO image will get adjusted, if they
differ from those on disk.
New files and files with changed content will get newly added.
Target files which do not exist in any of the according pathspec sources
will get removed from the ISO directory tree.
.br
If the effective setting of \-root differs from the iso_rr_path given
with \-old\-root, then the files underneath the \-old\-root directory get cloned
underneath the \-root directory. Cloning happens before file comparison.
.TP
\fB--old-root-no-ino\fR
Disable recording and use of disk inode numbers.
If no disk inode numbers are recorded, then option \-old\-root will have
to read disk file content and compare it with the MD5 checksum that is
recorded in the ISO image.
.br
With recorded disk inode numbers and with credible ctime and mtime,
it is possible to detect potential changes in the content without actually
reading it.
A loophole remains if multiple different filesystems may get mounted
at the same directory, like it is habit with /mnt.
In this case one has to use option \-\-old\-root\-devno
or disable the inode number shortcut by \-\-old\-root\-no\-ino.
.TP
\fB--old-root-devno\fR
Enable comparison of recorded device numbers together with recorded
inode numbers. This works only with good old stable device numbers which
get out of fashion, regrettably. If the hard disk has a different
device number after each reboot, then this comparison will see all
files as changed and thus prevent any incremental size saving.
.TP
\fB--old-root-no-md5\fR
Disable recording and use of MD5 checksums for data file content.
If neither checksums and nor disk inode numbers are recorded, then
option \-old\-root will have to read ISO image file content when comparing
it with disk file content.
.TP
.B Settings for image production:
.TP
\fB\-o\fR disk_path
Set the output file address for the emerging ISO image.
If the address exists as regular file, it will be truncated to length 0
when image production begins. It may not already exist as directory.
If it does not exist yet then its parent directory must exist and
a regular file will get created.
.br
A special kind of pseudo disk_path has the form "/dev/fd/"number.
It depicts the open file descriptor with the given number, regardless whether
the operating system supports this feature by file nodes in /dev/fd or not.
E.g. /dev/fd/4 is file descriptor 4 which was opened by the program that
later started xorriso.
.br
Default is standard output (/dev/fd/1) which may also be set by disk_path "\-".
.TP
\fB\-output\fR disk_path
Alias of \-o.
.TP
\fB--stdio_sync\fR "on"|"off"|number
Set the number of bytes after which to force output to disk
in order to keep the memory from being clogged with lots of
pending data for slow devices. Default "on" is the same as "16m".
Forced output can be disabled by "off".
.br
xorriso uses an inner fifo buffer with default size 4 MiB. So forcing
the operating system i/o cache to disk does not necessarily block the
simultaneous production of more image content.
.TP
\fB--emul-toc\fR
Write a second superblock with the first session into random\-access
files. If further sessions get appended and the first superblock gets updated,
then the second superblock will not be overwritten. This allows to still
mount the first session and to find the start blocks of the further sessions.
.br
The price is 64 KiB extra space consumption. If \-partition_offset is non\-zero,
then it is 128 KiB plus twice the partition setup.
.TP
\fB--no-emul-toc\fR
Do not write a second superblock with the first session into random\-access
files.
.br
This is the default.
.TP
\fB--sort-weight\fR weight_number iso_rr_path
Attribute a LBA weight number to regular files. If iso_rr_path leads
to a directory then all regular files underneath will get the weight_number.
.br
The weight_number may range from \-2147483648 to 2147483647.
The higher it is, the lower will be the block address of the file data
in the emerging ISO image.
Currently the El Torito boot catalog has a hardcoded weight of 1 billion.
Normally it should occupy the block with the lowest possible address.
Data files get added or loaded with initial weight 0.
.TP
\fB\-dir-mode\fR mode
Set the access permissions for all directories in the image to the given
mode which is either an octal number beginning with "0" or a comma separated
list of statements of the form [ugoa]*[+\-=][rwxst]* . E.g. ug=rx,a\-rwx
.TP
\fB\-file-mode\fR mode
Like \-dir\-mode but for all regular data files in the image.
.TP
\fB\-pad\fR
.br
Add 300 KiB to the end of the produced ISO image. This circumvents possible
read errors from ISO images which have been written to CD media in TAO mode.
The additional bytes are claimed as part of the ISO image if not \-\-emul\-toc
is given.
.br
Option \-pad is the default.
.TP
\fB\-no-pad\fR
Disable padding of 300 KiB to the end of the produced ISO image.
This is safe if the image is not meant to be written on CD or if it
gets written to CD as only track in write mode SAO.
.TP
\fB--old-empty\fR
Use the old way of of giving block addresses in the range
of [0,31] to files with no own data content. The new way is to have
a dedicated block to which all such files will point.
.TP
.B Settings for standards compliance:
.TP
\fB\-iso-level\fR number
Specify the ISO 9660 version which defines the limitations of file naming
and data file size. The naming restrictions do not apply to the
Rock Ridge names but only to the low\-level ISO 9660 names.
There are three conformance levels:
.br
Level 1 allows ISO names of the form 8.3 and file size up to 4 GiB \- 1.
.br
Level 2 allows ISO names with up to 32 characters
and file size up to 4 GiB \- 1.
.br
Level 3 allows ISO names with up to 32 characters
and file size of up to 400 GiB \- 200 KiB. (This size limitation is
set by the xorriso implementation and not by ISO 9660 which would
allow nearly 8 TiB.)
.br
Pseudo\-level 4 enables production of an additional ISO 9660:1999
directory tree.
.TP
\fB\-disallow_dir_id_ext\fR
Do not follow a bad habit of mkisofs which allows dots in the ISO names
of directories. On the other hand, some bootable GNU/Linux images depend on
this bad habit.
.TP
\fB\-U\fR
.br
This option allows ISO file names without dot and up to 37 characters,
ISO file paths longer than 255 characters, and all ASCII characters in file
names. Further it omits the semicolon and the version numbers at the end
of ISO names.
.br
This all violates ISO 9660 specs.
.TP
\fB\-untranslated-filenames\fR
Alias of \-U.
.TP
\fB\-untranslated_name_len\fR number
Allow ISO file names up to the given number of characters
without any character conversion. The maximum number is 96.
If a file name has more characters, then image production will
fail deliberately.
.br
This violates ISO 9660 specs.
.TP
\fB\-allow-lowercase\fR
Allow lowercase character in ISO file names.
.br
This violates ISO 9660 specs.
.TP
\fB\-d\fR
.br
Do not add trailing dot to ISO file names without dot.
.br
This violates ISO 9660 specs.
.TP
\fB\-omit-period\fR
Alias of \-d.
.TP
\fB\-l\fR
.br
Allow up to 31 characters in ISO file names.
.TP
\fB\-full-iso9660-filenames\fR
Alias of \-l.
.TP
\fB\-max-iso9660-filenames\fR
Allow up to 37 characters in ISO file names.
.br
This violates ISO 9660 specs.
.TP
\fB\-N\fR
.br
Omit the semicolon and the version numbers at the end of ISO names.
.br
This violates ISO 9660 specs.
.TP
\fB\-omit-version-number\fR
Alias of \-N.
.TP
.B Settings for standards extensions:
.TP
\fB\-R\fR
.br
With mkisofs this option enables Rock Ridge extensions. \fBxorrisofs\fR
produces them unconditionally.
.TP
\fB\-rock\fR
.br
Alias of \-R.
.TP
\fB\-r\fR
.br
Set Rock Ridge user and group id of all files in the ISO image to 0.
Grant r\-permissions to all. Deny all w\-permissions.
If any x\-permission is set, grant x\-permission to all.
Remove s\-bit and t\-bit.
.TP
\fB\-rational-rock\fR
Alias of \-r.
.TP
\fB\-D\fR
The standard ECMA\-119 demands that no path in the image shall have more
than 8 name components or 255 characters. Therefore it would be necessary
to move deeper directory trees to a higher directory. Rock Ridge offers an
opportunity to let these relocated directories appear at their orginal
deep position, but this feature might not be implemented properly by
operating systems which mount the image.
.br
Option \-D disables this deep directory relocation, and thus violates
ISO 9660 specs.
.br
xorrisofs has \-D set by default. If given explicitely then it overrides
the options \-rr_reloc_dir and \-hide\-rr\-moved.
.TP
\fB\-disable-deep-relocation\fR
Alias of \-D.
.TP
\fB\-rr_reloc_dir\fR name
Enable the relocation of deep directories and thus avoid ECMA\-119 file paths
of more than 8 name components or 255 characters. Directories which lead to
such file paths will get moved to a directory in the root directory of the
image. Its name gets set by this option.
It is permissible to use the root directory itself.
.br
The overall directory tree will appear originally deep when interpreted as
Rock Ridge tree. It will appear as re\-arranged if only ECMA\-119 information
is considered.
.br
If the given relocation target directory does not already exist when image
production begins, then it will get created and marked for Rock Ridge as
relocation artefact. At least on GNU/Linux it will not be displayed in
mounted Rock Ridge images.
.br
The name must not contain a '/' character after its first character and it
must not be longer than 255 bytes.
.br
This option has no effect if option \-D is present.
.TP
\fB\-hide-rr-moved\fR
Alias of \-rr_reloc_dir "/.rr_moved"
.TP
\fB--for_backup\fR
Enable options which improve backup fidelity:
\-\-acl, \-\-xattr, \-\-md5,
\-\-hardlinks.
.TP
\fB--acl\fR
.br
Enable recording and loading of ACLs from GNU/Linux or FreeBSD
(see man getfacl, man acl).
They will not be in effect with mounted ISO images. But xorriso can
restore them on the same systems when extracting files from the ISO image.
.TP
\fB--xattr\fR
.br
Enable recording and loading of GNU/Linux or FreeBSD extended attributes in
user namespace (see man getfattr, man attr,
resp. man getextattr, man 9 extattr).
They will not be in effect with mounted ISO images. But xorriso can
restore them on the same systems when extracting files from the ISO image.
.TP
\fB--md5\fR
.br
Enable recording of MD5 checksums for the overall ISO image and for each
single data file in the image. xorriso can check the content of an ISO
image with these sums and raise alert on mismatch.
See man xorriso, options \-check_media, check_md5_r.
xorriso can print recorded MD5 checksums. E.g. by:
.br
\-find / \-exec get_md5
.TP
\fB--hardlinks\fR
Enable loading and recording of hardlink relations.
Search for families of iso_rr files which stem from the same disk file,
have identical content filtering and have identical properties.
The members of each family get the same inode number in the ISO image.
.br
Whether these numbers are respected at mount time depends on the operating
system. xorriso can create hardlink families when extracting files from
the ISO image.
.TP
\fB--scdbackup_tag\fR disk_path record_name
Append a scdbackup checksum record to the image. This works only if the
parameter next_writeable_address of option \-C is 0.
If disk_path is not an empty string, then append a scdbackup checksum record
to the end of this file. record_name is a word that gets part of tag
and record.
.br
Program scdbackup_verify will recognize and verify tag resp. record.
.TP
\fB\-J\fR
.br
Enable the production of an additional Joliet directory tree along
with the ISO 9660 Rock Ridge tree.
.TP
\fB\-joliet\fR
Alias of \-J.
.TP
\fB\-joliet-long\fR
Allow 103 characters in Joliet file names rather than 64 as is prescribed
by the specification. Allow Joliet paths longer than the prescribed limit of
240 characters.
.br
Oversized names get truncated. Without this option, oversized paths get
excluded from the Joliet tree.
.TP
.B Settings for file hiding:
.TP
\fB\-hide\fR disk_path_pattern
Make files invisible in the directory tree of ISO 9660 and Rock Ridge,
if their disk_path matches the given shell parser pattern.
The data content of such hidden files will be included in the
resulting image, even if they do not show up in any directory.
But you will need own means to find nameless data in the image.
.br
This command does not apply to the boot catalog.
.TP
\fB\-hide-list\fR disk_path
Perform \-hide using each line out of file disk_path as argument
disk_path_pattern.
.TP
\fB\-hide-joliet\fR disk_path_pattern
Like option \-hide but making files invisible in the directory tree of Joliet,
if their disk_path matches the given shell parser pattern.
.TP
\fB\-hide-joliet-list\fR disk_path
Perform \-hide\-joliet using each line out of file disk_path as argument
disk_path_pattern.
.TP
.B ISO image ID strings:
.PP
The following strings and file addresses get stored in the Primary Volume
Descriptor of the ISO9660 image. The file addresses are ISO 9660
paths. These files should have iso_rr_paths which consist only of
the characters [A\-Z0\-9_] and exactly one dot which separates
at most 8 characters from at most 3 characters.
.TP
\fB\-V\fR text
Set the Volume Id of the ISO image.
xorriso accepts any text up to 32 characters,
but according to rarely obeyed specs stricter rules apply:
.br
Conformant are ASCII characters out of [A\-Z0\-9_]. Like: "IMAGE_23"
.br
Joliet allows 16 UCS\-2 characters. Like: "Windows name"
.br
Be aware that the volume id might get used automatically as name of the
mount point when the medium is inserted into a playful computer system.
.TP
\fB\-volid\fR text
Alias of \-V.
.TP
\fB\-volset\fR text
Set the Volume Set Id of the ISO image.
Permissible are up to 128 characters.
.TP
\fB\-p\fR text
Set the Publisher Id of the ISO image. This may identify the person or
organisation who specified what shall be recorded.
Permissible are up to 128 characters.
.TP
\fB\-publisher\fR text
Alias of \-p.
.TP
\fB\-A\fR text
Set the Application Id of the ISO image.
This may identify the specification of how the data are recorded.
Permissible are up to 128 characters.
.br
The special text "@xorriso@" gets converted to the id string of xorriso
which is normally written as Preparer Id. It is a wrong tradition to write
the program id as Application Id.
.TP
\fB\-appid\fR text
Alias of \-A.
.TP
\fB\-sysid\fR text
Set the System Id of the ISO image. This may
identify the system which can recognize and act upon the content of the
System Area in image blocks 0 to 15.
Permissible are up to 32 characters.
.TP
\fB\-p\fR text
Set the Preparer Id of the ISO image. This may
identify the person or other entity which controls the preparation of the data
which shall be recorded. Normally this should be the id of xorriso and not
of the person or program which operates xorriso. Please avoid to change it.
Permissible are up to 128 characters.
.br
The special text "@xorriso@" gets converted to the id string of xorriso
which is default at program startup.
.TP
\fB\-preparer\fR text
Alias of \-p.
.TP
\fB\-abstract\fR iso_path
Set the address of the Abstract File of the ISO image. This should
be the ISO 9660 path of a file in the image which contains an abstract
statement about the image content.
Permissible are up to 37 characters.
.TP
\fB\-biblio\fR iso_path
Set the address of the Biblio File of the ISO image. This should
be the ISO 9660 path of a file in the image which contains bibliographic
records.
Permissible are up to 37 characters.
.TP
\fB\-copyright\fR iso_path
Set the address of the Copyright File of the ISO image. This should
be the ISO 9660 path of a file in the image which contains a copyright
statement.
Permissible are up to 37 characters.
.TP
\fB--modification-date=YYYYMMDDhhmmsscc\fR
Set a timestring that overrides ISO image creation and modification timestamps
literally.
It must consist of 16 decimal digits which form YYYYMMDDhhmmsscc, with
YYYY between 1970 and 2999. Time zone is GMT.
It is supposed to match this GRUB line:
.br
search \-\-fs\-uuid \-\-set YYYY\-MM\-DD\-hh\-mm\-ss\-cc
.br
E.g. 2010040711405800 is 7 Apr 2010 11:40:58 (+0 centiseconds).
.TP
.B El Torito Bootable ISO images:
.PP
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.
\fBxorrisofs\fR 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.
.br
.PP
An \fBEl Torito\fR
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.
.br
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.
.br
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.
.br
\fBxorrisofs\fR 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.
.br
.PP
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 Sytem Area.
.br
.TP
\fB\-b\fR 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.
.br
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.
.TP
\fB\-eltorito-boot\fR iso_rr_path
Alias of \-b.
.TP
\fB\-eltorito-alt-boot\fR
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.
.TP
\fB\-e\fR 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.
.br
Normally no other El Torito options should be used with the catalog entry
that points to an EFI image.
Consider to use \-\-efi\-boot rather than \-e.
.TP
\fB--efi-boot\fR iso_rr_path
Perform \-eltorito\-alt\-boot, option \-e with the given
iso_rr_path, and again \-eltorito\-alt\-boot. This gesture is
used for achieving EFI\-bootability of the GRUB2 rescue CD.
.TP
\fB\-boot-load-size\fR number
Set the number of 512\-byte blocks for boot images which emulate
a floppy or a hard disk. A safe default for non\-emulating boot images is 4.
.TP
\fB\-hard-disk-boot\fR
Mark the boot image in the current catalog entry as emulated hard disk.
(Not suitable for any known boot loader.)
.TP
\fB\-no-emul-boot\fR
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.)
.br
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.)
.TP
\fB\-boot-info-table\fR
Overwrite certain bytes 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.
.TP
\fB\-c\fR 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.
.TP
\fB\-eltorito-catalog\fR iso_rr_path
Alias of \-c.
.TP
\fB--boot-catalog-hide\fR
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:
.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.
.br
A \fBMBR\fR (Master Boot Record) contains boot code and a partition table.
It does not hamper El Torito booting from CDROM.
.br
\fBxorrisofs\fR 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.
.br
.TP
\fB\-G\fR disk_path
Copy at most 32768 bytes from the given disk file to the very start of
the ISO image.
.br
Other than a El Torito boot image, the file disk_path needs not to be added
to the ISO image. It will not show up as file in the directory trees.
.TP
\fB\-generic-boot\fR disk_path
Alias of \-G.
.TP
\fB--embedded-boot\fR disk_path
Alias of \-G.
.TP
\fB\-isohybrid-mbr\fR disk_path
Install disk_path as ISOLINUX isohybrid MBR which makes the boot image
given by option \-b bootable from USB sticks and hard disks via PC\-BIOS.
This preparation is normally done by ISOLINUX program isohybrid
on the already produced ISO image.
.br
The disk path should lead to one of the Syslinux files isohdp[fp]x*.bin .
The MBR gets patched according to isohybrid needs. The first partition
describes the range of the ISO image. Its start is at block 0 by default,
but may be set to 64 disk blocks by option \-partition_offset 16.
.TP
\fB--protective-msdos-label\fR
Patch the System Area by a simple PC\-DOS partition table where partition 1
claims the range of the ISO image but leaves the first block unclaimed.
.TP
\fB\-partition_offset\fR 2kb_block_adr
Cause a partition table with a single partition that begins at the
given block address. This is counted in 2048 byte
blocks, not in 512 byte blocks. If the block address is non\-zero then it must
be at least 16. Values larger than 16 are hardly of use.
A non\-zero partition offset causes two superblocks to be
generated and two sets of directory trees. The image is then mountable from its
absolute start as well as from the partition start.
.br
The offset value of an ISO image gets preserved when a new session is added
to a loaded image.
So the value defined here is only in effect if a new ISO image gets written.
.TP
\fB\-partition_hd_cyl\fR number
Set the number of heads per cylinder for the partition table.
0 chooses a default value. Maximum is 255.
.TP
\fB\-partition_sec_hd\fR number
Set the number of sectors per head for the partition table.
0 chooses a default value. Maximum is 63.
.br
The product partition_sec_hd * partition_hd_cyl * 512 is the cylinder size.
It should be divisible by 2048 in order to allow exact alignment.
If it is too small to describe the image size by at most 1024 cylinders,
then appropriate values of partition_hd_cyl are chosen with
partition_sec_hd 32 or 63. If the image is larger than 8,422,686,720 bytes,
then the cylinder size constraints cannot be fulfilled. They seem not overly
important anyway. Flat block addresses in partition tables are good for 1 TiB.
.TP
\fB\-partition_cyl_align\fR mode
Control image size alignment to an integer number of cylinders.
It is prescribed by isohybrid specs and it seems to please program fdisk.
Cylinder size must be divisible by 2048.
Images larger than 8,323,596,288 bytes cannot be aligned.
.br
Mode "auto" is default. Alignment by padding happens only if
option \-isohybrid\-mbr is given.
.br
Mode "on" causes alignment by padding with option
\-\-protective\-msdos\-label too.
Mode "off" disables alignment unconditionally.