NAME SYNOPSIS DESCRIPTION OPTIONS EXAMPLES FILES ENVIRONMENT SEE ALSO BUGS AUTHOR COPYRIGHT CREDITS NAMExorriso - creates, loads, manipulates and writes ISO 9660 filesystem images with Rock Ridge extensions. Show SYNOPSISxorriso [settings|actions] DESCRIPTIONxorriso is a program which copies file objects from POSIX compliant filesystems into Rock Ridge enhanced ISO 9660 filesystems and performs session-wise manipulation of such filesystems. It can load the management information of existing ISO images and it writes the session results
to optical media or to filesystem objects. A special property of xorriso is that it needs neither an external ISO 9660 formatter program nor an external burn program for CD, DVD or BD but rather incorporates the libraries of libburnia-project.org . Note that xorriso does not write audio CDs and that it does not produce UDF filesystems which are specified for official video DVD or BD. Maybe you first want to have a look at section EXAMPLES near the end of this text before reading the next few hundred lines of background information.
Session model: Unlike other filesystems, ISO 9660 (aka ECMA-119) is not intended for read-write operation but rather for being generated in a single sweep and being written to media as a session. The written image in its session can then be mounted by the operating system for being used read-only. GNU/Linux is able to mount ISO images from block devices, which may represent optical media, other media or via a loop device even from regular disk files. FreeBSD mounts ISO images from devices that represent arbitrary media or from regular disk files. This session usage model has been extended on CD media by the concept of multi-session , which adds information to the CD and gives the mount programs of the operating systems the addresses of the entry points of each session. The mount programs recognize block
devices which represent CD media and will by default mount the image in the last session. xorriso provides growing as well as an own method named modifying which produces a completely new ISO image from the old one and the modifications. See paragraph Creating, Growing, Modifying, Blind Growing below. xorriso adopts the concept of multi-session by loading an image directory tree if present, by offering to manipulate it by several actions, and by writing the new image to the target medium. After -commit a new session begins with the freshly written one as input. A new input drive can only be chosen as long as the loaded ISO image was not altered. Pending alteration can be revoked by command -rollback. Writing a session to the target is supposed to be very expensive in terms of time and of consumed space on appendable or write-once media. Therefore all intended manipulations of a particular ISO image should be done in a single session. But in principle it is possible to store intermediate states and to continue with image manipulations.
Media types and states: There are two families of media in the MMC standard: These media can assume several states in which they offer different capabilities.
Creating, Growing, Modifying, Blind Growing: A new empty ISO image gets created if there is no input drive with a valid ISO 9660 image when the first time an output drive is defined. This is achieved by command -dev on blank media or by command -outdev on media in any state. If there is a input drive with a valid ISO image, then this image gets loaded as foundation for manipulations and extension. The constellation of input and output drive determines which write method will be used. They have quite different capabilities and constraints. The method of growing adds new data to the existing data on the medium. These data comprise of new file content and they override the
existing ISO 9660 + Rock Ridge directory tree. It is possible to hide files from previous sessions but they still exist on the medium and with many types of optical media it is quite easy to recover them by mounting older sessions. The write method of modifying produces compact filesystem images with no outdated files or directory trees. Modifying can write its images to target media which are completely unsuitable for multi-session
operations. E.g. DVD-RW which were treated with -blank deformat_quickest, DVD-R DL, named pipes, character devices, sockets. On the other hand modified sessions cannot be written to appendable media but to blank media only. If command -grow_blindly is set to a non-negative number and if -indev and -outdev are both set to different drives, then blind growing is performed. It produces an add-on session which is ready for being written to the given block address. This is the usage model of
Libburn drives: Input drive, i.e. source of an existing or empty ISO image, can be any random access readable libburn drive: optical media with readable data, blank optical media, regular files, block devices. All drive file objects have to offer rw-permission to the user of xorriso. Even those which will not be usable for reading an ISO image. MMC
compliant (i.e. optical) drives on GNU/Linux usually get addressed by the path of their block device or of their generic character device. E.g. Filesystem objects of nearly any type can be addressed by prefix "stdio:" and their path in the filesystem. E.g.: A very special kind of pseudo drive are open file descriptors. They are depicted by "stdio:/dev/fd/" and descriptor number (see man 2 open). Be aware that especially the superuser can write into any accessible file or device by using its path with the "stdio:" prefix. By default any address in the /dev tree without prefix "stdio:" will work only if it leads to a MMC drive.
Rock Ridge, POSIX, X/Open, El Torito, ACL, xattr: Rock Ridge 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. xorriso is not named "porriso" because POSIX only guarantees 14 characters of filename length. It is the X/Open System Interface standard XSI which demands a file name length of up to 255 characters and paths of up to 1024 characters. Rock Ridge fulfills this demand. An El Torito boot record points the BIOS bootstrapping facility to 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. ACL are an advanced way of controlling
access permissions to file objects. Neither ISO 9660 nor Rock Ridge specify a way to record ACLs. So libisofs has introduced a standard conformant extension named AAIP for that purpose. It uses this extension if enabled by command -acl. xattr (aka EA, or
extattr) are pairs of name and value which can be attached to file objects. AAIP is able to represent them and xorriso can record and restore them.
Command processing: Commands are either actions which happen immediately or settings which influence following actions. So their sequence does matter, unless they are given as program arguments and command -x is among them. Commands consist of a command word, followed by zero or more parameter words. If the list of parameter words is of variable length (indicated by "[...]" or "[***]") then it must be terminated by either the list delimiter, occur at the end of the argument list, or occur at the end of an input line. At program start the list delimiter is the string "--". This may be changed with the -list_delimiter command in order to allow "--" as parameter in a variable
length list. However, it is advised to reset the delimiter to "--" immediately afterwards. Pattern expansion converts a list of pattern words into a list of existing file addresses. Unmatched pattern words
will appear unaltered in that result list. Command and parameter words are either read from the program arguments, where one argument is one word, or from quoted input lines where words are recognized similar to the quotation rules of a shell parser. Quoted input converts whitespace-separated text into words. The double quotation mark " and the single quotation mark ’ can be used to enclose whitespace and make it part of words (e.g. of file names). 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. When the program starts then it first looks for argument -no_rc. If this is not present then it looks for its startup files and reads their content as command input lines. Then it interprets the program arguments as commands and parameters. Finally it enters dialog mode if command -dialog "on" has been executed by this point. The program ends either by command -end, or by the end of program arguments if dialog mode has not been enabled at that point, or by a problem event which triggers the threshold of command -abort_on. Dialog, Readline, Result pager: Dialog mode prompts for a quoted input line, parses it into words, and performs them as commands with their parameters. It provides assisting services to make dialog more comfortable. Readline is an enhancement for the input line. You may already know it from the bash shell. Whether it is available in xorriso depends on the availability of package readline-dev at the time when xorriso was built from its sourcecode. Command -page activates a built-in result text pager which may be convenient in dialog mode. After an action has output the given number of terminal lines, the pager prompts the user for a line of input. Some actions apply paging to their info output, too. OPTIONSAll command words are shown with a leading dash although this dash is not mandatory for the command to be recognized. Nevertheless within command -as the dashes of the emulated commands are mandatory. Execution order of program arguments: By default the program arguments of a xorriso run are interpreted as a sequence of commands which get performed exactly in the given order. This requires the user to write commands for desired settings before the commands which shall be influenced by those settings.
Note: It works only if it is given as program argument and with a single dash (i.e. "-x"). It will not work in startup files, nor with -options_from_file, nor in dialog mode, nor as "x" and finally not as "--x". It affects only the commands given as program arguments. -list_arg_sorting List all xorriso commands in the order which applies if command -x is in effect. The effect of acquiring a drive may depend on several commands in the next paragraph "Influencing the behavior of image loading". If desired, their enabling commands have to be performed before the commands which acquire the drive. Set input and output drive to the same address and
load an ISO image if it is present. If there is no ISO image then create a blank one. Set the image expansion method to growing. -indev address Set input drive and load an ISO image if present. If the new input drive differs from -outdev then switch from growing to modifying or to blind growing. It depends on the setting of -grow_blindly which of both gets activated. The same rules and restrictions apply as with -dev. -outdev address Set output drive and if it differs from the input drive then switch from growing to modifying or to blind growing. Unlike -dev and
-indev this action does not load a new ISO image. So it can be performed even if there are pending changes. -drive_class "harmless"|"banned"|"caution"|"clear_list" disk_pattern Add a drive path pattern to one of the safety lists or make those lists empty. There are three lists defined which get tested in the following sequence: -drive_access "exclusive"|"shared":"unrestricted"|"readonly" Control whether device file locking mechanisms shall be used when acquiring a drive, and whether status or content of the medium in the drive may be altered. Useful and most
harmless are the setting "shared:readonly" and the default setting "exclusive:unrestricted". -scsi_dev_family "default"|"sr"|"scd"|"sg" GNU/Linux specific: -grow_blindly "off"|predicted_nwa If predicted_nwa is a non-negative number then perform blind growing rather than modifying if -indev and -outdev are set to different drives. "off" or "-1" switch to modifying, which is the default. The
following commands should normally be performed before loading an image by acquiring an input drive. In rare cases it is desirable to activate them only after image loading. Set the speed for reading. Default is "none", which avoids to send a speed setting command to the drive before reading begins. -load entity id Load a particular (possibly outdated) ISO session from -dev or -indev. Usually all available sessions are shown with command -toc. -displacement [-]lba Compensate a displacement of the image versus the start address for which the image was prepared. This affects only loading of ISO images and reading of their files. The multi-session method of
growing is not allowed as long as -displacement is non-zero. I.e. -indev and -outdev must be different. The displacement gets reset to 0 before the drive gets re-acquired after writing. -read_fs "any"|"norock"|"nojoliet"|"ecma119" Specify which kind of filesystem tree to load if present. If the wish cannot be fulfilled, then ECMA-119 names are loaded and
converted according to -ecma119_map. -assert_volid pattern severity Refuse to load ISO images with volume IDs which do not match the given search pattern. When refusing an image, give up the input drive and issue an event of the given severity (like FAILURE, see -abort_on). An
empty search pattern accepts any image. -in_charset character_set_name Set the character set from which to convert file names when loading an image. See paragraph "Character sets" for more explanations. When loading the written image after -commit the setting of -out_charset will be copied to -in_charset. -auto_charset "on"|"off" Enable or disable recording and interpretation of the output character set name in an xattr attribute of the image root directory. If enabled and if a recorded character set name is found, then this name will be used as name of the input character set when reading an image. -hardlinks mode[:mode...] Enable or disable loading and recording of hardlink relations. -acl "on"|"off" Enable or disable processing of ACLs. If enabled, then xorriso will obtain ACLs from disk file objects, store ACLs in the ISO image using the libisofs specific AAIP format, load AAIP data from ISO images, test ACL during file comparison, and restore ACLs to disk files when extracting them from ISO images. See also commands -getfacl, -setfacl. -xattr "on"|"user"|"any"|"off" Enable or disable processing of xattr attributes. If enabled, then xorriso will handle xattr similar to ACL. See also commands -getfattr, -setfattr and above paragraph about xattr. -md5 "on"|"all"|"off"|"load_check_off" Enable or disable processing of MD5 checksums for the overall session and for each single data file. If enabled then images with checksum tags get loaded only if the tags of superblock and directory tree match properly. The MD5 checksums of data files and whole session
get loaded from the image if there are any. -for_backup Enable all extra features which help to produce or to restore backups with highest fidelity of file properties. Currently this is a shortcut for: -ecma119_map "stripped"|"unmapped"|"lowercase"|"uppercase" Choose the conversion of file names when a session gets loaded, if they stem neither from a Rock Ridge name nor from a Joliet name. -joliet_map "stripped"|"unmapped" Choose the conversion of file names when a session gets loaded from a Joliet tree. -iso_nowtime "dynamic"|timestring Choose whether to use the current time
("dynamic") or a fixed time point for timestamps of ISO 9660 nodes without a disk source file and as default for superblock timestamps. -disk_dev_ino "on"|"ino_only"|"off" Enable or disable processing of recorded file identification numbers (dev_t and ino_t). If enabled they are stored as xattr and can substantially accelerate file comparison. The
root node gets a global start timestamp. If during comparison a file with younger timestamps is found in the ISO image, then it is suspected to have inconsistent content. -file_name_limit [+]number Set the maximum permissible length
for file names in the range of 64 to 255. Path components which are longer than the given number will get truncated and have their last 33 bytes overwritten by a colon ’:’ and the hex representation of the MD5 of the first 4095 bytes of the whole oversized name. Potential incomplete UTF-8 characters will get their leading bytes replaced by ’_’. -rom_toc_scan "on"|"force"|"off"[:"emul_off"][:"emul_wide"] Read-only drives do not tell the actual media type but show any media as ROM (e.g. as DVD-ROM). The
session history of MMC multi-session media might be truncated to first and last session or even be completely false. (The emulated history of overwritable media is not affected by this.) -calm_drive "in"|"out"|"all"|"revoke"|"on"|"off" Reduce drive noise until it is actually used again. Some drives stay alert for substantial time after they have been used for reading. This reduces the startup time for the next drive operation but can be loud and waste energy if no i/o with the drive is expected to happen soon. -ban_stdio_write Allow for writing only the usage of MMC optical drives. Disallow to write the result into files of nearly arbitrary type. Once set, this command cannot be revoked. -early_stdio_test "on"|"appendable_wo"|"off" If enabled by "on" then regular files and block devices get tested for effective access permissions. This implies to try opening those files for writing,
which otherwise will happen only later and only if actual writing is desired. -data_cache_size number_of_tiles blocks_per_tile Set the size and granularity of the data cache which is used when ISO images are loaded and when file content is read from ISO images. The cache consists of several tiles, which each consists of several blocks. A larger cache reduces the need for tiles being read multiple times. Larger tiles might additionally improve the data throughput from the drive, but can be wasteful if the data are scattered over the medium. The following commands expect file addresses of two kinds: Note that in the ISO image you are as powerful as the superuser. Access permissions of the existing files in the image do not apply to your write operations. They are intended to be in effect with the read-only mounted image. If the iso_rr_path of a newly inserted file leads to an existing file object in the ISO image, then the following collision handling happens: The commands in this section alter the ISO image and not the local filesystem. Set the
pattern expansion mode for the disk_path parameters of several commands which support this feature. -add pathspec [...] | disk_path [***] Insert the given files or directory trees
from filesystem into the ISO image. -add_plainly mode If set to mode "unknown" then any command word that does not begin with "-" and is not recognized as known command will be subject to a virtual -add command. I.e. it will be used as pathspec or as disk_path and added to the image. If enabled,
-disk_pattern expansion applies to disk_paths. -path_list disk_path Like -add but read the parameter words from file disk_path or standard input if disk_path is "-". The list must contain exactly one pathspec or disk_path pattern per line. -quoted_path_list disk_path Like -path_list but with quoted input reading rules. Lines get split into parameter words for -add. Whitespace outside quotes is discarded. -map disk_path iso_rr_path Insert file object disk_path into the ISO image as iso_rr_path. If disk_path is a directory then its whole sub tree is inserted into the ISO image. -map_single disk_path iso_rr_path Like -map, but if disk_path is a directory then its sub tree is not inserted. -map_l disk_prefix iso_rr_prefix disk_path [***] Perform -map with each of the disk_path parameters. iso_rr_path will be composed from disk_path by replacing disk_prefix by iso_rr_prefix. -update disk_path iso_rr_path Compare file object disk_path with file object iso_rr_path. If they do not match,
then perform the necessary image manipulations to make iso_rr_path a matching copy of disk_path. By default this comparison will imply lengthy content reading before a decision is made. Commands -disk_dev_ino or -md5 may accelerate comparison if they were already in effect when the loaded session was recorded. -update_r disk_path iso_rr_path Like -update but working recursively. I.e. all file objects below both addresses get compared whether they have counterparts below the other address and whether both counterparts match. If there is a mismatch then the necessary update manipulation is done. -update_l disk_prefix iso_rr_prefix disk_path [***] Perform -update_r with each of the disk_path parameters. iso_rr_path will be composed from disk_path by replacing disk_prefix by iso_rr_prefix. -update_li iso_rr_prefix disk_prefix iso_rr_path [***] Perform -update_r with each of the iso_rr_path parameters. disk_path will be composed from iso_rr_path by replacing iso_rr_prefix by disk_prefix. -update_lxi disk_prefix iso_rr_prefix disk_path [***] Perform -update_r with each of the disk_path parameters and with iso_rr_paths in the ISO filesystem which are derived from the disk_path parameters after exchanging disk_prefix by iso_rr_prefix. So, other than -update_l, this detects missing matches of disk_path and deletes the corresponding iso_rr_path. -cut_out disk_path byte_offset byte_count iso_rr_path Map a byte interval of a regular disk file or of a device file into a regular file in the ISO image. The file depicted by disk_path has to support random read access. -cpr disk_path [***] iso_rr_path Insert the given files or directory trees from filesystem into the ISO image. -mkdir iso_rr_path [...] Create empty directories if they do not exist yet. Existence as directory generates a WARNING event, existence as other file causes a FAILURE event. -lns target_text iso_rr_path Create a symbolic link with address iso_rr_path which points to target_text. iso_rr_path may not exist yet. -clone iso_rr_path_original iso_rr_path_copy Create a copy of the
ISO file object iso_rr_path_original with the new address iso_rr_path_copy. If the original is a directory then copy all files and directories underneath. If iso_rr_path_original is a boot catalog file, then it gets not copied but is silently ignored. -cp_clone iso_rr_path_original [***] iso_rr_path_dest Create copies of one or more ISO file objects as with command -clone. In case of collision merge directories with existing ones, but do not overwrite existing ISO file objects. Settings for file insertion: Set the maximum permissible size for a single data file. The values get summed up for the actual limit. If the only value is "off" then the file size is not limited by xorriso. Default is a limit of 100 extents, 4g -2k each: -not_mgt code[:code[...]] Control the behavior of the exclusion lists. -not_paths disk_path [***] Add the given paths to the list of excluded absolute disk paths. If a given path is relative, then the current -cdx is prepended to form an absolute path. Pattern matching, if enabled, happens at definition time
and not when exclusion checks are made. -not_leaf pattern Add a single shell parser style pattern to the list of exclusions for disk leafnames. These patterns are evaluated when the exclusion checks are made. -not_list disk_path Read lines from disk_path and use each of them either as -not_paths parameter, if they contain a / character, or as -not_leaf pattern. -quoted_not_list disk_path Like -not_list but with quoted input reading rules. Each word is handled as one parameter for -not_paths or -not_leaf. -follow occasion[:occasion[...]] Enable or disable resolution of symbolic links and mountpoints under disk_paths. This applies to actions -add, -du*x, -ls*x, -findx, -concat, and to -disk_pattern expansion. Not an occasion but an optional setting is: -pathspecs "on"|"off"|"as_mkisofs" Control parameter interpretation with xorriso actions -add and -path_list. -overwrite "on"|"nondir"|"off" Allow or disallow overwriting of existing files in the ISO
image by files with the same name. -split_size number["k"|"m"] Set the threshold for automatic splitting of regular files. Such splitting maps a large disk file onto a ISO directory with several part files in it. This is necessary if the size of the disk file exceeds -file_size_limit. Older operating systems can handle files in mounted ISO 9660 filesystems only if they are smaller
than 2 GiB or in other cases 4 GiB. The following commands manipulate files in the ISO image, regardless
whether they stem from the loaded image or were newly inserted. Set the pattern expansion mode for the iso_rr_path parameters of several commands which support this feature. -rm iso_rr_path [***] Delete the given files from the ISO image. -rm_r iso_rr_path [***] Delete the given files or directory trees from the ISO image. See also the note with command -rm. -rmdir iso_rr_path [***] Delete empty directories. -move iso_rr_path iso_rr_path Rename the file given by the first (origin) iso_rr_path to the second (destination) iso_rr_path. Deviate from rules of shell command mv by not moving the origin file underneath an existing destination directory. The origin file will rather replace such a directory, if this is allowed by command -overwrite. -mv iso_rr_path [***] iso_rr_path Rename the given file objects in the ISO
tree to the last parameter in the list. Use the same rules as with shell command mv. -chown uid iso_rr_path [***] Set ownership of file objects in the ISO image. uid may either be a decimal number or the name of a user known to the operating system. -chown_r uid iso_rr_path [***] Like -chown but affecting all files below eventual directories. -chgrp gid iso_rr_path [***] Set group attribute of file objects in the ISO image. gid may either be a decimal number or the name of a group known to the operating system. -chgrp_r gid iso_rr_path [***] Like -chgrp but affecting all files below eventual directories. -chmod mode iso_rr_path [***] Equivalent to shell command chmod in the ISO image. mode is either an
octal number beginning with "0" or a comma separated list of statements of the form [ugoa]*[+-=][rwxst]* . -chmod_r mode iso_rr_path [***] Like -chmod but affecting all files below eventual directories. -setfacl acl_text iso_rr_path [***] Attach the given ACL to the given iso_rr_paths. If the files already have ACLs, then those get deleted before the new ones get into effect. If acl_text is empty, or contains the text "clear" or the text "--remove-all", then the existing ACLs will be removed and no new ones will be attached. Any other content of acl_text will be interpreted as a list of ACL entries.
It may be in the long multi-line format as put out by -getfacl but may also be abbreviated as follows: -setfacl_r acl_text iso_rr_path [***] Like -setfacl but affecting all files below eventual directories. -setfacl_list disk_path Read the output of -getfacl_r or shell command getfacl -R and apply it to the iso_rr_paths as given in lines beginning with "# file:". This will change ownership, group and ACL of the given files. If disk_path is "-" then lines are read from standard input. Line "@" ends
the list, "@@@" aborts without changing the pending iso_rr_path. -setfattr [-]name value iso_rr_path [***] Attach the given xattr pair of name and value to the given iso_rr_paths. If the given name is prefixed by "-", then the pair with that name gets removed from the xattr list. If name is "--remove-all" then all user namespace xattr of the given iso_rr_paths get
deleted. In case of deletion, value must be an empty text. -setfattr_r [-]name value iso_rr_path [***] Like -setfattr but affecting all files below eventual directories. -setfattr_list disk_path Read the output format of -getfattr_r or shell command getfattr -Rd and apply it to the iso_rr_paths as given in lines beginning with "# file:". All previously existing xattr of the acceptable namespaces will be deleted before the new xattr get attached. The set of acceptable names depends on the
setting of command -xattr. -alter_date type timestring iso_rr_path [***] Alter the date entries of files in the ISO image. type may be one of the following: -alter_date_r type timestring iso_rr_path [***] Like -alter_date but affecting all files below eventual directories. -hide hide_state iso_rr_path [***] Prevent
the names of the given files from showing up in the directory trees of ISO 9660 and/or Joliet and/or HFS+ when the image gets written. 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.
Tree traversal command -find: -find iso_rr_path [test [op] [test ...]] [-exec action [params]] -- A restricted substitute for shell command
find in the ISO image. It performs an action on matching file objects at or below iso_rr_path. Default action is
echo, i.e. to print the address of the found file. Other actions are certain xorriso commands which get performed on the found files. These commands may have specific parameters. See also their particular descriptions. Filters may be installed between data files in the ISO image and their content source outside the image. They may also be used vice versa between data content in the image and target files on disk. Register a content filter by associating a name with a program path, program arguments, and some behavioral options. Once registered it can be applied to multiple data files in the ISO image, regardless whether their content resides in the loaded ISO image or in the local filesystem. External filter processes may produce synthetic file content by reading the original content from stdin and writing to stdout whatever they want. They must deliver the same output on the same input in repeated
runs. -unregister_filter name Remove an -external_filter registration. This is only possible if the filter is not applied to any file in the ISO image. -close_filter_list Irrevocably ban commands -concat "pipe", -external_filter, and -unregister_filter, but not -set_filter. Use this to prevent external filtering in general or when all intended filters are registered and -concat mode "pipe" shall be disallowed. External filters may also be banned totally at compile time of xorriso. By default they are banned if xorriso runs under setuid permission. -set_filter name iso_rr_path [***] Apply an -external_filter or a built-in
filter to the given data files in the ISO image. If the filter suffix is not empty , then it will be applied to the file name. Renaming only happens if the filter really gets attached and is not revoked by its options. By default files which already bear the suffix will not get filtered. The others will get the suffix appended to their names. If the filter has option "remove_suffix", then the filter will only be applied if the suffix is present and can be removed. Name oversize or collision
caused by suffix change will prevent filtering. -set_filter_r name iso_rr_path [***] Like -set_filter but affecting all data files below eventual directories. (see also paragraph about settings below) Discard the manipulated ISO image and reload it from -indev. (Use -rollback_end if immediate program end is desired.) -changes_pending "no"|"yes"|"mkisofs_printed"|"show_status" Write runs are performed only if a change of
the image has been made since the image was loaded or created blank. Vice versa the program will start a write run for pending changes when it ends normally (i.e. not by abort and not by command -rollback_end). -commit Perform the write operation. Afterwards, if -outdev is readable, make it the new -dev and load the image from there. Switch to growing mode. (A subsequent -outdev will
activate modification mode or blind growing.) -commit is performed automatically at end of program if there are uncommitted manipulations pending. Writing can last quite a while. It is not unnormal with several types of media that there is no progress visible for the first few minutes or that the drive gnaws on the medium for a few minutes after all data have been transmitted. xorriso and the drives are in a client-server relationship. The drives have much freedom about what to do with the media. Some combinations of drives and media simply do not work, despite the promises by their vendors. If writing fails then try other media or another drive. The reason for such failure is hardly ever in the code of the various burn programs but you may well try some of those listed below under SEE ALSO. -eject "in"|"out"|"all" Eject the medium in -indev, -outdev, or both drives, respectively. Note: It is not possible yet to effectively eject disk files. -commit_eject "in"|"out"|"all"|"none" Combined -commit and -eject. When writing has finished do not make -outdev the new -dev, and load no ISO image. Rather eject -indev and/or -outdev. Give up any non-ejected drive. -blank mode Make media ready for writing from scratch (if not -dummy is activated). -format mode Convert unformatted DVD-RW into overwritable ones, "de-ice" DVD+RW, format newly purchased BD-RE or BD-R, re-format DVD-RAM or BD-RE. -list_formats Put out a list of
format descriptors as reported by the output drive for the current medium. The list gives the index number after "Format idx", a MMC format code, the announced size in blocks (like "2236704s") and the same size in MiB. -list_speeds Put out a list of speed values as reported by the drives with the loaded media. The list tells read speeds of the input drive and of the output drive. Further it tells write speeds of the output drive. -list_profiles "in"|"out"|"all" Put out a list of media types supported by -indev, -outdev, or both, respectively. The currently recognized type is marked by text "(current)". -truncate_overwritable entity id adjust On overwritable medium copy the volume descriptors of an existing session to the overall descriptors at LBA 0 ff. This makes all sessions inaccessible which are younger than the activated one. A reason to do this would be read errors in the younger sessions and the wish to re-write or skip them. -close_damaged "as_needed"|"force" Try to close the upcoming track and session if the drive reported the medium as damaged. This may apply to CD-R, CD-RW, DVD-R, DVD-RW, DVD+R, DVD+R DL, or BD-R media. It is indicated by warning messages when the drive gets acquired, and by a remark "but next track is damaged" with the line "Media status :" of command -toc. Rock Ridge info will be generated by default. ACLs will be written according to the
setting of command -acl. If enabled by "on", generate Joliet tree additional to ISO 9660 + Rock Ridge tree. -hfsplus "on"|"off" If enabled by "on", generate a HFS+ filesystem inside the ISO 9660 image and mark it by Apple Partition Map (APM) entries in the System Area, the first 32 KiB of the image. -rockridge "on"|"off" Mode "off" disables production of Rock Ridge information for the ISO 9660 file objects. The multi-session capabilities of xorriso depend much on the naming fidelity of Rock Ridge. So it is strongly discouraged to deviate from default setting "on". -compliance rule[:rule...] Adjust the compliance to specifications of ISO 9660/ECMA-119 and its
contemporary extensions. In some cases it is worth to deviate a bit in order to circumvent bugs of the intended reader system or to get unofficial extra features. -rr_reloc_dir name Specify the name of the relocation directory in which deep directory subtrees shall be placed if -compliance is set to "deep_paths_off" or "long_paths_off". A deep directory is one that has a chain of 8 parent directories (including root)
above itself, or one that contains a file with an ECMA-119 path of more than 255 characters. -volid text Specify the volume ID, which most operating systems will consider to be the volume name of the image or medium. -volset_id text Set the volume set ID string to be written with the next -commit. Permissible are up to 128 characters. This setting gets overridden by image loading. -publisher text Set the publisher ID string to be written with the next -commit. This may identify the person or organisation who specified what shall be recorded. Permissible are up to 128 characters. This setting gets overridden by image loading. -application_id text Set the application ID string to be written with the next -commit. This may identify the specification of how the data are recorded. Permissible are up to 128 characters. This setting gets overridden by image loading. -system_id text Set the system ID string to be written with the next -commit. 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. This setting gets overridden by image loading. -volume_date type timestring Set one of the four overall timestamps for subsequent image writing. Available types are: -copyright_file text Set the copyright file name to be written with the next -commit. This should be the ISO 9660 path of a file in the image which contains a copyright statement. Permissible are up to 37 characters. This setting gets overridden by image loading. -abstract_file text Set the abstract file name to be written with the next -commit. 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. This setting gets overridden by image loading. -biblio_file text Set the biblio file name to be written with the next -commit. This should be the ISO 9660 path of a file in the image which contains bibliographic records. Permissible are up to 37 characters. This setting gets overridden by image loading. -preparer_id text Set the preparer ID string to be written with the next -commit. 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. -application_use character|0xXY|disk_path Specify the content of the Application Use field which can take at most 512 bytes. -out_charset character_set_name Set the character set to which file names get converted when writing an image. See paragraph "Character sets" for more explanations. When loading the written image after -commit the setting of -out_charset will be copied to -in_charset. -uid uid User id to be used for all files when the new ISO tree gets written to media. -gid gid Group id to be used for all files when the new ISO tree gets written to media. -zisofs parameter[:parameters] Set global parameters for zisofs compression. This data format is recognized and transparently uncompressed by some Linux kernels. It is to be applied via command -set_filter with built-in filter "--zisofs". -speed code|number[k|m|c|d|b] Set the burn speed. Default is "max" (or "0") = maximum speed as
announced by the drive. Further special speed codes are: -stream_recording "on"|"off"|"full"|"data"|number Setting "on" tries to circumvent the management of defects on DVD-RAM, BD-RE, or
BD-R. Defect management keeps partly damaged media usable. But it reduces write speed to half nominal speed even if the medium is in perfect shape. For the case of flawless media, one may use -stream_recording "on" to get full speed. -dvd_obs "default"|"32k"|"64k"|"obs_pad"|"bdr_obs_exempt" GNU/Linux specific: Set the number of bytes to be transmitted with each write operation to DVD or BD media. A number of 64 KB may improve throughput with bus systems which show latency problems. The default depends on media type, on command -stream_recording , and on compile time options. -modesty_on_drive parameter[:parameters] Control whether the drive buffer shall be kept from getting completely filled. Parameter "on" (or "1") keeps the program from trying to write to the burner drive while its buffer is in danger to be filled over a given limit. If this limit is
exceeded then the program will wait until the filling reaches a given low percentage value. -use_immed_bit "on"|"off"|"default" Control whether several long lasting SCSI commands
shall be executed with the Immed bit, which makes the commands end early while the drive operation is still going on. xorriso then inquires progress indication until the drive reports to be ready again. If this feature is turned off, then blanking and formatting will show no progress indication. -stdio_sync "on"|"off"|"end"|number Set the number of bytes after which to force output to stdio: pseudo drives. This forcing keeps 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", or be delayed by "end" until all data are produced. If a number is chosen, then it must be at least 64k. -dummy "on"|"off" If "on" then simulate burning or refuse with FAILURE event if no simulation is possible, do neither blank nor format. -fs number["k"|"m"] Set the size of the fifo buffer which smoothens the data stream from ISO image generation to media burning. Default is 4 MiB, minimum 64 kiB, maximum 1 GiB. The number may be followed by letter "k" or "m" which means unit is kiB (= 1024) or MiB (= 1024 kiB). -close "on"|"off"|"as_needed" If -close is set to "on" then mark the written medium as not appendable any more. This will have no effect on overwritable media types. Setting "on" is the contrary of cdrecord option -multi, and is one aspect of growisofs option -dvd-compat. -write_type "auto"|"tao"|"sao/dao" Set the write type for the next burn run. "auto" will select SAO with blank CD media, DAO with blank DVD-R[W] if -close is "on", and elsewise CD TAO or the equivalent write type of the particular DVD/BD media. Choosing TAO or SAO/DAO explicitly might cause the burn run to fail if the desired write type is not possible with the given media state. -padding number["k"|"m"]|"included"|"appended" Append the given number of extra bytes to the image stream. This is a traditional remedy for a traditional bug in block device read drivers. Needed only for CD recordings in TAO mode. Since one can
hardly predict on what media an image might end up, xorriso adds the traditional 300k of padding by default to all images. Contrary to published specifications many BIOSes will load an El Torito record from the first session on media and not from the last one, which gets mounted by default. This makes no problems with overwritable media, because they appear to inadverted readers as one single session. Several of the following commands expect disk paths as input but also accept description strings for the libisofs interval reader, which is able to cut out data from disk files or -indev and to zeroize parts of the content: command
-append_partition, boot specs system_area=, grub2_mbr=, prep_boot_part=, efi_boot_part=. "discard"|"keep"|"patch"|"replay"|"show_status"| Each -boot_image command has two parameters: type and setting. More than one -boot_image command may be used to define the handling of one or more boot images. Sequence matters. When loading an ISO filesystem, system area
and El Torito boot images get loaded, too. The default behavior is not to write loaded El Torito boot images and to write the loaded system area content without alterations. A bootspec is a word of the form name=value. It is used to describe the parameters of a boot feature. The names "dir", "bin_path", "efi_path" lead to El Torito bootable images. Name "system_area" activates a given file as MBR or other disk header. -append_partition partition_number type_code disk_path Cause a prepared filesystem image to be appended to the ISO image and to be described by a partition table entry in a boot block at the
start of the emerging ISO image. The partition entry will bear the size of the submitted file rounded up to the next multiple of 2048 bytes or to the next multiple of the cylinder size. From man
genisoimage: "Jigdo is a tool to help in the distribution of large files like CD and DVD images; see http://atterer.net/jigdo/ for more details. Debian CDs and DVD ISO images are published on the web in jigdo format to allow end users to download them more efficiently." Clear Jigdo Template Extraction parameter list or add a parameter to that list. The alias names are the
corresponding genisoimage options. They are accepted as parameter names as well. Especially they are recognized by the -as mkisofs emulation command. File names are strings of non-zero bytes with 8 bit each. Unfortunately the same byte string may appear as
different peculiar national characters on differently nationalized terminals. The meanings of byte codes are defined in character sets which have names. Shell command iconv -l lists them. Set the character set from which to convert file names when loading an image and to which to convert when writing an image. -local_charset character_set_name Override the system assumption of the local character set name. If this appears necessary, one should consider to set -backslash_codes to "on" in order to avoid dangerous binary codes being sent to the terminal. Since the tasks of xorriso are manifold and prone to external influence, there may arise the need for xorriso to report and handle problem events. Set
the severity threshold for events to abort the program. -return_with severity exit_value Set the threshold and exit_value to be returned at program end if no abort has happened. This is to allow xorriso to go on after problems but to get a failure indicating exit value from the program, nevertheless. Useful is a value lower than the -abort_on threshold, down to "WARNING". -report_about severity Set the threshold for events to be reported. -signal_handling mode Control the installation of a signal handler which shall react on external signals (e.g. from program "kill" or from keys Ctrl+C) or on signals caused by severe program errors. -error_behavior occasion behavior Control the program behavior at problem event occasions. For now this applies to occasions "image_loading" which is given while an image tree is read from the input device, and to "file_extraction" which is given with osirrox commands like -extract.
Dialog mode control: -dialog "on"|"off"|"single_line" Enable or disable to enter dialog mode after all program arguments are processed. In dialog mode input lines get prompted via readline or from stdin.
-page length width Describe terminal to the text pager. See also above, paragraph
Result pager. -use_readline "on"|"off" If "on" then use readline for dialog. Else use plain stdin. -reassure "on"|"tree"|"off" If "on" then ask the user for "y" or "n":
Drive and media related inquiry actions: -devices Show list of available MMC drives with the addresses of their libburn standard device files. -device_links Like -devices, but presenting the drives with addresses of symbolic links which point to the actual device files.
In case of overwritable media holding a valid ISO image, it may happen that only a single session gets shown. But if the first session on the overwritable media was written by xorriso then a complete session history can be emulated. -toc_of "in"|"out"|"all"[":short"] Like command -toc but explicitly choosing which drive’s table-of-content to show. "in" shows -indev or -dev, "out" shows -outdev or -dev, "all" shows the same as -toc. -assess_indev_features "plain"|"cmd"|"as_mkisofs"|"replay" Inspect the filesystem on -indev for the presence of Rock Ridge, Joliet, or ISO 9660:1999, and for traces of other write options which seem to have been used when the filesystem was created. -mount_cmd drive entity id path Emit an appropriate command
line for mounting the ISO session indicated by drive, entity and id. The result will be different on GNU/Linux and on FreeBSD or NetBSD. -mount_opts option[:option...] Set options which influence -mount and -mount_cmd. Currently there is only option "exclusive" which is default and its counterpart "shared". The latter causes xorriso not to give up the affected drive with command -mount. On GNU/Linux it adds mount option "loop" which may enable mounting of several sessions of the same block device at the same time. One should not write to a mounted optical medium, of course. Take care to umount all sessions before ejecting. -session_string drive entity id format Print to the result channel a text which gets composed according to format
and the parameters of the addressed session. -print_size Print the foreseeable consumption of 2048 byte blocks by next -commit. This can last a while as a -commit gets prepared and only in last moment is revoked by this command. The result depends on several settings and also on the kind of output device. If no -jigdo options are set and not command -as "mkisofs" was used, then -padding (300 kB by default) is not counted as part of the image size. -tell_media_space Print available space on the output medium and the free space after subtracting already foreseeable consumption by next -commit. -pvd_info Print various ID strings and timestamps which can be found in loaded ISO images. Some of the IDs may be changed by commands like -volid or -publisher. For these IDs -pvd_info reports what would be written with the next -commit. The timestamps get not automatically propagated from loaded image to newly written image. The ones for new images may be set by command -volume_date. See there for the meaning of the particular timestamps. -report_el_torito mode With mode plain print a report about the information found in the El Torito boot catalog of the loaded ISO image. -report_system_area mode With mode plain print
a report about the information found in the System Area of the loaded ISO image. The report consists of zero to many lines with a header text, a colon, and information text.
Navigation in ISO image and disk filesystem: -cd iso_rr_path Change the current working directory in the ISO image. This is prepended to iso_rr_paths which do not begin with ’/’. -cdx disk_path Change the current working directory in the local filesystem. To be prepended to disk_paths which do not begin with ’/’.
-ls iso_rr_pattern [***] List files in the ISO image which match shell patterns (i.e. with wildcards ’*’ ’?’ ’[a-z]’). If a pattern does not begin with ’/’ then it is compared with addresses relative to -cd. -lsd iso_rr_pattern [***] Like -ls but listing directories as themselves and not by their content. This resembles shell command ls -d. -lsl iso_rr_pattern [***] Like -ls but also list some of the file attributes. The output format resembles shell command ls -ln. -lsdl iso_rr_pattern [***] Like -lsd but also list some of the file attributes. The output format resembles shell command ls -dln. -lsx disk_pattern [***] List files in the local filesystem which match shell patterns. Patterns which do not begin with ’/’ are used relative to -cdx. -lsdx disk_pattern [***] Like -lsx but listing directories as themselves and not by their content. This resembles shell command ls -d. -lslx disk_pattern [***] Like -lsx but also listing some of the file attributes. Output format resembles shell command ls -ln. -lsdlx disk_pattern [***] Like -lsdx but also listing some of the file attributes. Output format resembles shell command ls -dln. -getfacl iso_rr_pattern [***] Print the access permissions of the given files in the ISO image using the format of shell command getfacl. If a file has no ACL then it gets fabricated from the -chmod settings. A file may have a real ACL if it was introduced into the ISO image while command -acl was set to "on". -getfacl_r iso_rr_pattern [***] Like -gefacl but listing recursively the whole file trees underneath eventual directories. -getfattr iso_rr_pattern [***] Print the xattr of the given files in the ISO image. If a file has no such xattr then noting is printed for it. The choice of namespaces depends on the setting of command -xattr: "on" or "user" restricts it to namespace "user", "any" only omits namespace "isofs". -getfattr_r iso_rr_pattern [***] Like -gefattr but listing recursively the whole file trees underneath of directories. -du iso_rr_pattern [***] Recursively list size of directories and files in the ISO image which match one of the patterns. similar to shell command du -k. -dus iso_rr_pattern [***] List size of directories and files in the ISO image which match one of the patterns. Similar to shell command du -sk. -dux disk_pattern [***] Recursively list size of directories and files in the local filesystem which match one of the patterns. Similar to shell command du -k. -dusx disk_pattern [***] List size of directories and files in the local filesystem which match one of the patterns. Similar to shell command du -sk. -findx disk_path [-name pattern] [-type t] [-exec action [params]] -- Like -find but operating on local filesystem and not on the ISO image. This is subject to the settings of -follow. -compare disk_path iso_rr_path Compare attributes and eventual data file content of a fileobject in the local filesystem with a file object in the ISO image. The iso_rr_path may well point to an image file object which is not yet committed, i.e. of which the data content still resides in the local filesystem. Such data content is prone to externally caused changes. -compare_r disk_path iso_rr_path Like -compare but working recursively. I.e. all file objects below both addresses get compared whether they have counterparts below the other address and whether both counterparts match. -compare_l disk_prefix iso_rr_prefix disk_path [***] Perform -compare_r with each of the disk_path parameters. iso_rr_path will be composed from disk_path by replacing disk_prefix by iso_rr_prefix. -show_stream iso_rr_path [***] Display the content stream chain of data files in the ISO image. The chain consists of the iso_rr_name and one or more streams, separated by " < " marks. A stream description consists of one or more texts, separated by ":" characters. The first text tells the stream type, the following ones, if ever, describe its individual
properties. Frequently used types are: -show_stream_r iso_rr_path [***] Like -show_stream but working recursively. It is not uncommon that optical media produce read errors. The reasons may be various and get obscured by error correction which is performed by the drives and based on extra data on the media. If a drive returns data then one can quite trust
that they are valid. But at some degree of read problems the correction will fail and the drive is supposed to indicate error. Try to read data blocks from the indev drive, optionally copy them to a disk file, and finally report about the encountered quality. Several options may be used to modify the default behavior. -check_media_defaults [option [option ...]] -- Preset options for runs of -check_media, -extract_cut and best_effort file extraction. Options given with -check_media will override the preset options. -extract_cut will override some options automatically. -check_md5 severity iso_rr_path [***] Compare the data content of the given files in the loaded image with their recorded MD5
checksums, if there are any. In case of any mismatch an event of the given severity is issued. It may then be handled by appropriate settings of commands -abort_on or -return_with which both can cause non-zero exit values of the program run. Severity ALL suppresses that event. -check_md5_r severity iso_rr_path [***] Like -check_md5 but checking all data files underneath the given paths. Only mismatching data files will be reported. Normally xorriso only writes to disk files which were given as stdio: pseudo-drives or as
log files. But its alter ego osirrox is able to extract file objects from ISO images and to create, overwrite, or delete file objects on disk. Setting off disables disk filesystem manipulations. This is the default unless the program was started with leafname osirrox. Elsewise the capability to restore files can be enabled explicitly by -osirrox on. It can be irrevocably disabled by -osirrox banned. -extract iso_rr_path disk_path Copy the file objects at and underneath iso_rr_path to their corresponding addresses at and underneath disk_path. This is the inverse of -map or -update_r. -extract_single iso_rr_path disk_path Like -extract, but if iso_rr_path is a directory then its sub tree gets not restored. -extract_l iso_rr_prefix disk_prefix iso_rr_path [***] Perform -extract with each of the iso_rr_path parameters. disk_path will be composed from iso_rr_path by replacing iso_rr_prefix by disk_prefix. -extract_cut iso_rr_path byte_offset byte_count disk_path Copy a byte interval from a data file out of an ISO image into a newly created disk file. The main purpose for this is to offer a way of handling large files if they are not supported by mount -t iso9660 or if the target disk filesystem cannot store large files. -cpx iso_rr_path [***] disk_path Copy single leaf file objects from the ISO image to the address given by disk_path. If more then one iso_rr_path is given then disk_path must be a directory or non-existent. In the latter case it gets created and the extracted files get installed in it with the same leafnames. -cpax iso_rr_path [***] disk_path Like -cpx but restoring mtime, atime as in ISO image and trying to set ownership and group as in ISO image. -cp_rx iso_rr_path [***] disk_path Like -cpx but also extracting whole directory trees from the ISO image. -cp_rax iso_rr_path [***] disk_path Like -cp_rx but restoring mtime, atime as in ISO image and trying to set ownership and group as in ISO image. -paste_in iso_rr_path disk_path byte_offset byte_count Read the content of a ISO data file and write it into a
data file or device file on disk beginning at the byte_offset. Write at most byte_count bytes. The file depicted by disk_path has to support random write access. -concat mode [target | lim prog [args [...]] lim] iso_rr_path [***] Copy the data content of one or more data files of the ISO image into a disk file object, into a file descriptor, or start a program and copy the data into its standard input. The latter is subject to the
security restrictions for external filters. Mode pipe expects as second parameter a delimiter word which shall mark the end of the program argument list. The third argument is the disk_path to the program. It must contain at least one ’/’. $PATH is not applied. Further parameters up to the announced delimiter word are used as arguments with the program start. Example: The further parameters in all modes are the iso_rr_paths of data files. Their content gets concatenated in the copy. -extract_boot_images disk_path Copy boot equipment to disk, which is not necessarily represented as data files in the ISO filesystem. The data get written into various files in a disk directory, which may already exist or of which the parent must exist so that it can get created. -mount drive entity id path Produce the same line as -mount_cmd and then execute it as external program run after giving up the depicted drive. See also -mount_opts. This demands -osirrox to be enabled and normally will succeed only for the superuser. For safety reasons the mount program is only executed if it is reachable as /bin/mount or /sbin/mount. Writing of ISO 9660 on CD is traditionally done by program mkisofs as ISO 9660 image producer and cdrecord as burn program. xorriso does not strive for their comprehensive emulation. Nevertheless it
is ready to perform some of its core tasks under control of commands which in said programs trigger comparable actions. Perform the variable length option list as sparse emulation of the program depicted by the personality word. Personality "mkisofs" accepts the options listed with: Personalities
"xorrisofs", "genisoimage", and "genisofs" are aliases for "mkisofs". Personality "cdrecord" accepts the options listed with: -read_mkisofsrc Try one by one to open for reading: -pacifier behavior_code Control behavior of UPDATE pacifiers during write operations. The following behavior codes are defined: -scdbackup_tag list_path record_name Set the parameter "name" for a scdbackup checksum record. It will be appended in an scdbackup checksum tag to the -md5 session tag if the image starts at LBA 0. This is the case if it gets written as first
session onto a sequential medium, or piped into a program, named pipe or character device.
Scripting, dialog and program control features:
-options_from_file fileaddress Read quoted input from fileaddress and execute it like dialog lines. Empty lines and lines which begin by # are ignored. Normally one line should hold one xorriso command and all its parameters. Nevertheless lines may be concatenated by a trailing backslash.
-version Print program name and version, component versions, license. -list_extras code Tell whether certain extra features were enabled at compile time. Code "all" lists all features and a headline. Other codes pick a single feature. Code "codes" lists them. They share names with related commands (see also there): -history textline Copy textline into libreadline history. -status mode|filter Print the current settings of xorriso. Modes: -status_history_max number Set maximum number of history lines to be reported with -status "long_history". -list_delimiter word Set the list delimiter to be used instead of "--". It has to be a single word, must not be empty, not longer than 80 characters, and must not contain quotation marks. -sh_style_result "on"|"off" Make the result output of some filesystem inspection commands look more
like the output of equivalent shell commands. The most important effect is to prevent the wrapping of file addresses into quotation marks with commands -backslash_codes "on"|"off"|mode[:mode] Enable or disable the interpretation of symbolic representations of special characters with quoted input, or with program arguments, or with program text output. If enabled the following translations apply: -temp_mem_limit number["k"|"m"] Set the maximum size of temporary memory to be used for image dependent buffering. Currently this
applies to pattern expansion, LBA sorting, restoring of hard links. -print text Print a text line to the result channel which is by default stdout. -print_info text Print a text line to the info channel which is by default stderr. -print_mark text Print a text line to the mark channel which is by default directed to both, result and info channel. An empty text will cause no output at all. -prompt text Show text at beginning of output line and wait for the user to hit the Enter key or to send a line via stdin. -sleep seconds Wait for the given number of seconds before performing the next command. Expect coarse granularity no better than 1/100 seconds. -errfile_log mode path|channel If problem events are related to input files from the filesystem, then their disk_paths can be logged to a file or to
output channels R or I. -session_log path If path is not empty it gives the address of a plain text file where a log record gets appended after each session. This log can be used to determine the
start_lba of a session for mount options -o sbsector= (on GNU/Linux) or -s (on FreeBSD) from date or volume ID. -scsi_log "on"|"off" Mode "on" enables very verbose logging of SCSI commands and drive replies. Logging messages get printed to stderr, not to any of the xorriso output channels.
-rollback_end Discard pending changes. End program immediately. # any text Only in dialog or file execution mode, and only as first non-whitespace in line: Do not execute the line but store it in readline history.
Support for frontend programs via stdin and stdout: -pkt_output "on"|"off" Consolidate text output on stdout and classify each line by a channel indicator:
-logfile channel fileaddress Copy output of a channel to the given file. Channel may be one of: "." for all channels, "I" for info messages, "R" for result lines, "M" for -mark texts. -mark text If text is not empty it will get put out on "M" channel each time xorriso is ready for the next dialog line or before xorriso performs a command that was entered to the pager prompt. -msg_op opcode parameter_text This command shall facilitate extraction of particular information from the message output of other commands. It
gives access to the C API function Xorriso_parse_line() and to the message sieve that is provided by the C API. Please refer to their descriptions in file xorriso.h. Further it helps to interpret the severity codes of info messages. -named_pipe_loop mode[:mode] disk_path_stdin disk_path_stdout disk_path_stderr Temporarily replace standard input, standard output and standard error by named pipes. Enter dialog mode without readline. -launch_frontend program [arguments ...] -- Start
the program that is given as first parameter. Submit the other parameters as program arguments. Enable xorriso dialog mode. -prog text Use text as name of this program in subsequent messages -prog_help text Use text as name of this program and perform -help. EXAMPLESOverview of examples: As superuser learn about available drives Blank
medium and compose a new ISO image as batch run The ISO image may be shaped in a more
elaborate way like the following: Omit some unwanted stuff by removing it from the image directory tree. Reintroduce some wanted stuff. A dialog session doing about the same Manipulate an existing ISO image on
the same medium Copy modified ISO image from one medium to another Bring a prepared ISOLINUX tree onto medium and make it bootable Change
existing file name tree from ISO-8859-1 to UTF-8 Operate on storage facilities other than optical drives Burn an existing ISO image file to medium Perform multi-session runs as of cdrtools traditions Let xorriso work underneath growisofs Adjust thresholds for verbosity, exit value and program abort Examples of input
timestrings Incremental backup of a few directory trees Above example produces a result similar to -root / -old-root / with mkisofs. For getting the session trees accumulated in the new sessions, let all -update commands use a common parent directory and clone it after updating is done: Sessions on multi-session media are separated by several MB of unused blocks. So with small sessions the payload capacity can become substantially lower than the overall media capacity. If the remaining space on a medium does not suffice for the next gap, the drive is supposed to close the medium automatically. Better do not use your youngest
backup for -update_r. Have at least two media which you use alternatingly. So only older backups get endangered by the new write operation, while the newest backup is stored safely on a different medium. Restore directory trees from a particular ISO session to disk Try to retrieve blocks from a damaged medium FILESProgram alias names: Startup files: Runtime control files: ENVIRONMENTThe following environment variables influence the program behavior: SEE ALSOFor the mkisofs emulation of xorriso xorrisofs(1) For the cdrecord emulation of xorriso xorrecord(1) For mounting xorriso generated ISO 9660 images (-t iso9660) mount(8) Libreadline, a comfortable input line facility readline(3) Other programs which produce ISO 9660 images mkisofs(8), genisoimage(1) Other programs which burn sessions to optical media growisofs(1), cdrecord(1), wodim(1), cdrskin(1) ACL and xattr getfacl(1), setfacl(1), getfattr(1), setfattr(1) MD5 checksums md5sum(1) On FreeBSD the commands for xattr and MD5 differ getextattr(8), setextattr(8), md5(1) BUGSTo report bugs, request help, or suggest enhancements for xorriso, please send electronic mail to the public list <>. If more privacy is desired, mail to <>. AUTHORThomas Schmitt <> COPYRIGHTCopyright (c) 2007 - 2022 Thomas Schmitt CREDITSxorriso is in part based on work by Vreixo Formoso who provides libisofs together with Mario Danic who also leads the libburnia team. Vladimir Serbinenko contributed the HFS+ filesystem code and related knowledge. Thanks to Andy Polyakov who invented emulated growing, to Derek Foreman and Ben Jansens who once founded libburn. (HTML generated from xorriso.1 on Sat Oct 8 15:43:40 CEST 2022 by man_xorriso_to_html.sh ) |