Clarified xorriso documentation about deep directories

This commit is contained in:
2012-03-14 15:26:49 +00:00
parent ba571848fa
commit 7c34e7c255
3 changed files with 214 additions and 202 deletions

View File

@ -50,7 +50,7 @@
@c man .\" First parameter, NAME, should be all caps
@c man .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
@c man .\" other parameters are allowed: see man(7), man(1)
@c man .TH XORRISO 1 "Version 1.2.1, Mar 11, 2012"
@c man .TH XORRISO 1 "Version 1.2.1, Mar 14, 2012"
@c man .\" Please adjust this date whenever revising the manpage.
@c man .\"
@c man .\" Some roff macros, for reference:
@ -199,7 +199,10 @@ Adjustable thresholds for abort, exit value, and problem reporting.
@c man \fBSession model:\fR
@c man .br
@cindex Session, _definition
Unlike other filesystems, ISO 9660 is not intended for read-write operation but
@cindex ISO 9660, _definition
@cindex ECMA-119, _definition
Unlike other filesystems, @strong{ISO 9660} (aka @strong{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
@strong{session}.
@*
@ -335,7 +338,7 @@ not even that. Command -rom_toc_scan might or might not help in such cases.
@chapter Creating, Growing, Modifying, Blind Growing:
@c man .B Creating, Growing, Modifying, Blind Growing:
@*
@cindex Create, new ISO image, _definiton
@cindex Create, new ISO image, _definition
A new empty ISO image gets @strong{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
@ -397,7 +400,7 @@ and the burn program is desired. -C $msc1,$msc2 is equivalent to:
@chapter Libburn drives
@c man .B Libburn drives:
@c man .br
@cindex Drive, _definiton
@cindex Drive, _definition
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.
@ -496,7 +499,7 @@ prefix "stdio:" to other paths.
@chapter Rock Ridge, POSIX, X/Open, El Torito, ACL, xattr
@c man .B Rock Ridge, POSIX, X/Open, El Torito, ACL, xattr:
@c man .br
@cindex Rock Ridge, _definiton
@cindex Rock Ridge, _definition
@strong{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
@ -514,7 +517,7 @@ demands a file name length of up to 255 characters and paths of up to 1024
characters. Rock Ridge fulfills this demand.
@c man .PP
@sp 1
@cindex El Torito, _definiton
@cindex El Torito, _definition
An @strong{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.
@ -524,7 +527,7 @@ Most bootable GNU/Linux CDs are equipped with ISOLINUX or GRUB boot images.
@command{xorriso} is able to create or maintain an El Torito object which
makes such an image bootable. For details see command -boot_image.
@*
@cindex MBR, _definiton
@cindex MBR, _definition
It is possible to make ISO images bootable from USB stick or other
hard-disk-like media by -boot_image parameter system_area= . This installs
a Master Boot Record which may get adjusted according to the needs
@ -542,7 +545,7 @@ EFI, MIPS Big Endian (SGI), MIPS Little Endian (DEC), SUN SPARC.
@*
@c man .PP
@sp 1
@cindex ACL, _definiton
@cindex ACL, _definition
@strong{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
@ -566,9 +569,9 @@ Recording and restoring of ACLs from and to local files works currently
only on GNU/Linux and FreeBSD.
@c man .PP
@sp 1
@cindex xattr, _definiton
@cindex EA, _definiton
@cindex extattr, _definiton
@cindex xattr, _definition
@cindex EA, _definition
@cindex extattr, _definition
@strong{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 @command{xorriso} allows to record and restore
@ -596,7 +599,7 @@ given as program arguments and command
@strong{-x}
is among them.
@*
@cindex List delimiter, _definiton
@cindex List delimiter, _definition
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
@ -644,7 +647,7 @@ differs from the usual shell parsers. In @command{xorriso}, a quotation mark
does not make a pattern symbol literal.
@c man .PP
@sp 1
@cindex Quoted input, _definiton
@cindex Quoted input, _definition
@strong{Quoted input}
converts whitespace-separated text into words.
The double quotation mark " and the single quotation mark ' can be used to
@ -2641,8 +2644,8 @@ tree.
@item -compliance rule[:rule...]
@kindex -compliance controls standard compliance
@cindex Write, compliance to specs, -compliance
Adjust the compliance to specifications of ISO 9660 and its contemporary
extensions. In some
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.
@*
@ -2654,40 +2657,40 @@ can be revoked individually by appending "_off". Like "deep_paths_off".
@*
Rule keywords are:
@*
"iso_9660_level="number chooses level 1 with ISO names of the form 8.3
and -file_size_limit <= 4g - 1, or level 2 with ISO names up to
length 32 and the same -file_size_limit, or level 3 with ISO names up to
"iso_9660_level="number chooses level 1 with ECMA-119 names of the form 8.3
and -file_size_limit <= 4g - 1, or level 2 with ECMA-119 names up to
length 32 and the same -file_size_limit, or level 3 with ECMA-119 names up to
length 32 and -file_size_limit >= 400g -200k. If necessary -file_size_limit
gets adjusted.
@*
"allow_dir_id_ext" allows ISO names of directories to have a name extension
"allow_dir_id_ext" allows ECMA-119 names of directories to have a name extension
as with other file types. It does not force dots and it omits the version
number, though. This is a bad tradition of mkisofs which violates ECMA-119.
Especially ISO level 1 only allows 8 characters in a directory name and
not 8.3.
@*
"omit_version" does not add versions (";1") to ISO and Joliet file names.
"omit_version" does not add versions (";1") to ECMA-119 and Joliet file names.
@*
"only_iso_version" does not add versions (";1") to Joliet file names.
@*
"deep_paths" allows ISO file paths deeper than 8 levels.
"deep_paths" allows ECMA-119 file paths deeper than 8 levels.
@*
"long_paths" allows ISO file paths longer than 255 characters.
"long_paths" allows ECMA-119 file paths longer than 255 characters.
@*
"long_names" allows up to 37 characters with ISO file names.
"long_names" allows up to 37 characters with ECMA-119 file names.
@*
"no_force_dots" does not add a dot to ISO file names which have none.
"no_force_dots" does not add a dot to ECMA-119 file names which have none.
@*
"no_j_force_dots" does not add a dot to Joliet file names which have none.
@*
"lowercase" allows lowercase characters in ISO file names.
"lowercase" allows lowercase characters in ECMA-119 file names.
@*
"full_ascii" allows all 8-bit characters except 0x0 and '/'
in ISO file names.
in ECMA-119 file names.
@*
"untranslated_names" might be dangerous for inadverted reader programs
which rely on the restriction to at most 37 characters in ISO file names.
This rule allows ISO file names up to 96 characters with no character
which rely on the restriction to at most 37 characters in ECMA-119 file names.
This rule allows ECMA-119 file names up to 96 characters with no character
conversion. If a file name has more characters, then image production will
fail deliberately.
@*
@ -2735,15 +2738,17 @@ Default setting is
@*
always_gmt:old_rr".
@*
Note: The term "ISO file" means the plain ISO 9660 names and attributes
Note: The term "ECMA-119 name" means the plain ISO 9660 names and attributes
which get visible if the reader ignores Rock Ridge.
@c man .TP
@item -rr_reloc_dir name
@kindex -rr_reloc_dir sets name of relocation directory
@cindex Relocation directory, set name, -rr_reloc_dir
Specify the name of the relocation directory in which deep directory subtrees
shall be placed if -compliance is set to "deep_paths_off". A deep directory
is one that has a chain of 8 parent directories (including root) above itself.
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.
@*
The overall directory tree will appear originally deep when interpreted
as Rock Ridge tree. It will appear as re-arranged if only ECMA-119
@ -2764,7 +2769,7 @@ The name must not contain a '/' character and must not be longer than
Specify the volume ID. @command{xorriso} accepts any text up to 32 characters,
but according to rarely obeyed specs stricter rules apply:
@*
ECMA 119 demands ASCII characters out of [A-Z0-9_]. Like: "IMAGE_23"
ECMA-119 demands ASCII characters out of [A-Z0-9_]. Like: "IMAGE_23"
@*
Joliet allows 16 UCS-2 characters. Like: "Windows name"
@*
@ -3180,7 +3185,7 @@ The first "next" discards loaded boot images and their catalog.
@strong{patch} applies patching to existing boot images
if they seem to bear a boot info table.
@*
@cindex System area, _definiton
@cindex System area, _definition
@cindex MBR, set, -boot_image system_area=
@strong{system_area=}disk_path copies at most 32768 bytes from the given
disk file to the very start of the ISO image.
@ -3192,7 +3197,7 @@ to the ISO image.
@*
-boot_image isolinux system_area= implies "partition_table=on".
@*
@cindex Partition table, _definiton
@cindex Partition table, _definition
@strong{partition_table=on} causes a simple partition table to be written
into bytes 446 to 511 of the System Area.
@*
@ -3215,7 +3220,7 @@ then those parameters get updated when the new System Area is written.
Special "system_area=/dev/zero" causes 32k of NUL-bytes.
Use this to discard an MBR which was loaded with the ISO image.
@*
@cindex Partition offset, _definiton
@cindex Partition offset, _definition
@strong{partition_offset=}2kb_block_adr causes 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
@ -3226,7 +3231,7 @@ absolute start as well as from the partition start.
The offset value of an ISO image gets preserved when a new session is added.
So the value defined here is only in effect if a new ISO image gets written.
@*
@cindex Cylinder size, _definiton
@cindex Cylinder size, _definition
@strong{partition_hd_cyl=}number gives the number of heads per cylinder for
the partition table. 0 chooses a default value. Maximum is 255.
@*
@ -3240,7 +3245,7 @@ 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.
@*
@cindex Cylinder alignment, _definiton
@cindex Cylinder alignment, _definition
@strong{partition_cyl_align=}mode controls 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.