Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
GENISOIMAGE(1)		     General Commands Manual		  GENISOIMAGE(1)

NAME
     genisoimage - create ISO9660/Joliet/HFS filesystem with optional Rock Ridge
     attributes

SYNOPSIS
     genisoimage [options] [-o filename] pathspec [pathspec ...]

DESCRIPTION
     genisoimage  is  a pre-mastering program to generate ISO9660/Joliet/HFS hy-
     brid filesystems.

     genisoimage is capable  of  generating  the  System  Use  Sharing	Protocol
     records  (SUSP)  specified by the Rock Ridge Interchange Protocol.  This is
     used to further describe the files in the	ISO9660  filesystem  to  a  Unix
     host,  and provides information such as long filenames, UID/GID, POSIX per-
     missions, symbolic links, and block and character device files.

     If Joliet or HFS hybrid command line  options  are  specified,  genisoimage
     will  create  the	additional filesystem metadata needed for Joliet or HFS.
     Otherwise genisoimage will generate a pure ISO9660 filesystem.

     genisoimage can generate a true (or shared) HFS hybrid filesystem. The same
     files are seen as HFS files when accessed from a Macintosh and  as  ISO9660
     files  when  accessed from other machines. HFS stands for Hierarchical File
     System and is the native filesystem used on Macintosh computers.

     As an alternative, genisoimage can generate the Apple Extensions to ISO9660
     for each file. These extensions provide each file with  CREATOR,  TYPE  and
     certain  Finder flags when accessed from a Macintosh. See the HFS MACINTOSH
     FILE FORMATS section below.

     genisoimage takes a snapshot of a given directory tree, and generates a bi-
     nary image which will correspond to an ISO9660 and/or HFS	filesystem  when
     written to a block device.

     Each file written to the ISO9660 filesystem must have a filename in the 8.3
     format  (up  to  8  characters, period, up to 3 characters, all uppercase),
     even if Rock Ridge is in use.  This filename is used on  systems  that  are
     not  able	to  make  use of the Rock Ridge extensions (such as MS-DOS), and
     each filename in each directory must be different from the other  filenames
     in  the  same directory.  genisoimage generally tries to form correct names
     by forcing the Unix filename to uppercase and truncating as  required,  but
     often  this  yields unsatisfactory results when the truncated names are not
     all unique.  genisoimage assigns weightings to each filename,  and  if  two
     names that are otherwise the same are found, the name with the lower prior-
     ity  is renamed to include a 3-digit number (guaranteed to be unique).  For
     example, the two  files  foo.bar  and  foo.bar.~1~  could	be  rendered  as
     FOO.BAR;1 and FOO000.BAR;1.

     When  used  with various HFS options, genisoimage will attempt to recognise
     files stored in a number of Apple/Unix file formats and will copy the  data
     and  resource forks as well as any relevant Finder information. See the HFS
     MACINTOSH FILE FORMATS section below for  more  about  formats  genisoimage
     supports.

     Note  that  genisoimage  is not designed to communicate with the writer di-
     rectly.  Most writers have proprietary command sets  which  vary  from  one
     manufacturer  to  another, and you need a specialized tool to actually burn
     the disc.	wodim is one such tool.  The latest version of wodim  is  avail-
     able from http://www.cdrkit.org/.

     pathspec  is  the	path of the directory tree to be copied into the ISO9660
     filesystem.  Multiple paths can be specified, and	genisoimage  will  merge
     the  files  found	in  all  of  the  specified  path components to form the
     filesystem image.

     If the option -graft-points has been specified, it is possible to graft the
     paths at points other than the root directory, and it is possible to  graft
     files  or	directories  onto the cdrom image with names different than what
     they have in the source filesystem.  This is easiest to illustrate  with  a
     couple  of  examples.  Let's start by assuming that a local file ../old.lis
     exists, and you wish to include it in the cdrom image.

	    foo/bar/=../old.lis

     will include old.lis in the cdrom image at /foo/bar/old.lis, while

	    foo/bar/xxx=../old.lis

     will include old.lis in the cdrom image at /foo/bar/xxx.  The same sort  of
     syntax  can  be used with directories as well.  genisoimage will create any
     directories required such that the graft points exist on the cdrom image --
     the directories do not need to appear in one of the paths.  By default, any
     directories that are created on the fly like  this  will  have  permissions
     0555 and appear to be owned by the person running genisoimage.  If you wish
     other  permissions  or  owners  of  the intermediate directories, see -uid,
     -gid, -dir-mode, -file-mode and -new-dir-mode.

     genisoimage will also run on Windows machines when  compiled  with  Cygnus'
     cygwin  (available from http://www.cygwin.com/).  Therefore most references
     in this man page to Unix can be replaced with Win32.

OPTIONS
     Several options can be specified as defaults in a .genisoimagerc configura-
     tion file, as well as on the command line.  If a parameter is specified  in
     both places, the setting from the command line is used.  For details on the
     format and possible locations of this file, see genisoimagerc(5).

     -abstract file
	    Specifies  the abstract filename.  There is space for 37 characters.
	    Equivalent to ABST in the .genisoimagerc file.

     -A application_id
	    Specifies a text string that will be written into the volume header.
	    This should describe the application  that	will  be  on  the  disc.
	    There  is  space  for  128	characters.   Equivalent  to APPI in the
	    .genisoimagerc file.

     -allow-limited-size
	    When processing files larger than 2GiB which cannot be easily repre-
	    sented in ISO9660, add them with  a  shrunk  visible  file	size  to
	    ISO9660  and  with	the correct visible file size to the UDF system.
	    The result is an inconsistent filesystem and users need to make sure
	    that they really use UDF rather than ISO9660 driver to read  a  such
	    disk. Implies enabling -udf.

     -allow-leading-dots

     -ldots
	    Allow  ISO9660 filenames to begin with a period.  Usually, a leading
	    dot is replaced with an underscore in order to maintain MS-DOS  com-
	    patibility.
	    This  violates  the ISO9660 standard, but it happens to work on many
	    systems.  Use with caution.

     -allow-lowercase
	    This options allows lowercase characters to appear in ISO9660  file-
	    names.
	    This  violates  the ISO9660 standard, but it happens to work on some
	    systems.  Use with caution.

     -allow-multidot
	    This options allows more than one dot to  appear  in  ISO9660  file-
	    names.   A leading dot is not affected by this option, it may be al-
	    lowed separately using -allow-leading-dots.
	    This violates the ISO9660 standard, but it happens to work	on  many
	    systems.  Use with caution.

     -biblio file
	    Specifies the bibliographic filename.  There is space for 37 charac-
	    ters.  Equivalent to BIBL in the .genisoimagerc file.

     -cache-inodes

     -no-cache-inodes
	    Enable  or	disable  caching  inode  and device numbers to find hard
	    links to files.  If genisoimage finds a hard link (a file with  mul-
	    tiple  names),  the  file will also be hard-linked on the CD, so the
	    file  contents  only  appear  once.   This	helps  to  save   space.
	    -cache-inodes   is	default  on  Unix-like	operating  systems,  but
	    -no-cache-inodes is default on some other systems  such  as  Cygwin,
	    because  it  is  not safe to assume that inode numbers are unique on
	    those systems.  (Some versions of Cygwin create fake  inode  numbers
	    using  a  weak hashing algorithm, which may produce duplicates.)  If
	    two files have the same inode number but are not hard links  to  the
	    same  file,  genisoimage  -cache-inodes  will  not behave correctly.
	    -no-cache-inodes is  safe  in  all	situations,  but  in  that  case
	    genisoimage  cannot detect hard links, so the resulting CD image may
	    be larger than necessary.

     -alpha-boot alpha_boot_image
	    Specifies the path and filename of the boot image to  be  used  when
	    making  an	Alpha/SRM  bootable CD. The pathname must be relative to
	    the source path specified to genisoimage.

     -hppa-bootloader hppa_bootloader_image
	    Specifies the path and filename of the boot image to  be  used  when
	    making  an	HPPA  bootable	CD. The pathname must be relative to the
	    source path specified to genisoimage.  Other options  are  required,
	    at	the  very  least a kernel filename and a boot command line.  See
	    the HPPA NOTES section below for more information.

     -hppa-cmdline hppa_boot_command_line
	    Specifies the command line to be passed to the HPPA boot loader when
	    making a bootable CD. Separate the parameters with spaces or commas.
	    More options must be passed to genisoimage, at the very least a ker-
	    nel filename and the boot loader filename.	See the HPPA NOTES  sec-
	    tion below for more information.

     -hppa-kernel-32 hppa_kernel_32

     -hppa-kernel-64 hppa_kernel_64
	    Specifies  the  path and filename of the 32-bit and/or 64-bit kernel
	    images to be used when making an HPPA  bootable  CD.  The  pathnames
	    must be relative to the source path specified to genisoimage.  Other
	    options are required, at the very least the boot loader filename and
	    the  boot  command	line.  See the HPPA NOTES section below for more
	    information.

     -hppa-ramdisk hppa_ramdisk_image
	    Specifies the path and filename of the ramdisk image to be used when
	    making an HPPA bootable CD. The pathname must  be  relative  to  the
	    source  path  specified to genisoimage.  This parameter is optional.
	    Other options are required, at the very least a kernel filename  and
	    the boot command line. See the HPPA NOTES section below for more in-
	    formation.

     -mips-boot mips_boot_image
	    Specifies  the  path  and filename of the boot image to be used when
	    making an SGI/big-endian MIPS bootable CD. The pathname must be rel-
	    ative to the source path specified to genisoimage.	This option  may
	    be specified several times, to store up to 15 boot images.

     -mipsel-boot mipsel_boot_image
	    Specifies  the  path  and filename of the boot image to be used when
	    making an DEC/little-endian MIPS bootable CD. The pathname	must  be
	    relative to the source path specified to genisoimage.

     -B img_sun4,img_sun4c,img_sun4m,img_sun4d,img_sun4e

     -sparc-boot img_sun4,img_sun4c,img_sun4m,img_sun4d,img_sun4e
	    Specifies  a  comma-separated list of boot images that are needed to
	    make a bootable CD for SPARC systems.  Partition 0 is used	for  the
	    ISO9660  image,  the first image file is mapped to partition 1.  The
	    comma-separated list may  have  up	to  7  fields,	including  empty
	    fields.  This option is required to make a bootable CD for Sun SPARC
	    systems.   If -B or -sparc-boot has been specified, the first sector
	    of the resulting image will contain a Sun disk label. This disk  la-
	    bel  specifies  slice  0 for the ISO9660 image and slices 1 to 7 for
	    the boot images that have been specified with this option. Byte off-
	    sets 512 to 8191 within each of the additional boot images must con-
	    tain a primary boot that works for the appropriate	SPARC  architec-
	    ture. The rest of each of the images usually contains a UFS filesys-
	    tem used for the primary kernel boot stage.

	    The  implemented  boot  method  is	the one found with SunOS 4.x and
	    SunOS 5.x.	However, it does not depend on SunOS internals but  only
	    on	properties of the Open Boot prom, so it should be usable for any
	    OS for SPARC systems.  For more information also see the NOTES  sec-
	    tion below.

	    If	the  special filename ...  is used, the actual and all following
	    boot partitions are mapped to the previous partition. If genisoimage
	    is called with -G image -B ...  all boot partitions  are  mapped  to
	    the  partition  that  contains  the ISO9660 filesystem image and the
	    generic boot image that is located in the first 16	sectors  of  the
	    disc is used for all architectures.

     -G generic_boot_image
	    Specifies the path and filename of the generic boot image to be used
	    when making a generic bootable CD.	The boot image will be placed on
	    the  first	16  sectors of the CD, before the ISO9660 primary volume
	    descriptor.  If this option is used together with  -sparc-boot,  the
	    Sun  disk label will overlay the first 512 bytes of the generic boot
	    image.

     -b eltorito_boot_image
	    Specifies the path and filename of the boot image to  be  used  when
	    making  an	El  Torito bootable CD for x86 PCs. The pathname must be
	    relative to the source path specified to genisoimage.   This  option
	    is	required  to make an El Torito bootable CD.  The boot image must
	    be exactly 1200 kB, 1440 kB or 2880 kB,  and  genisoimage  will  use
	    this  size when creating the output ISO9660 filesystem.  The PC BIOS
	    will use the image to emulate a floppy disk, so the  first	512-byte
	    sector should contain PC boot code.  This will work, for example, if
	    the boot image is a LILO-based boot floppy.

	    If	the  boot image is not an image of a floppy, you need to add ei-
	    ther -hard-disk-boot or -no-emul-boot.  If	the  system  should  not
	    boot off the emulated disk, use -no-boot.

	    If -sort has not been specified, the boot images are sorted with low
	    priority  (+2)  to	the  beginning of the medium.  If you don't like
	    this, you need to specify a sort weight of 0 for the boot images.

     -eltorito-alt-boot
	    Start with a new set of El Torito boot  parameters.   Up  to  63  El
	    Torito boot entries may be stored on a single CD.

     -hard-disk-boot
	    Specifies  that the boot image used to create El Torito bootable CDs
	    is a hard disk image. The image must begin with a master boot record
	    that contains a single partition.

     -no-emul-boot
	    Specifies that the boot image used to create El Torito bootable  CDs
	    is a "no emulation" image. The system will load and execute this im-
	    age without performing any disk emulation.

     -no-boot
	    Specifies  that  the  created  El  Torito CD should be marked as not
	    bootable. The system will provide an emulated drive for  the  image,
	    but will boot off a standard boot device.

     -boot-load-seg segment_address
	    Specifies  the  load segment address of the boot image for no-emula-
	    tion El Torito CDs.

     -boot-load-size load_sectors
	    Specifies the number of "virtual" (512-byte) sectors to load in  no-
	    emulation  mode.  The default is to load the entire boot file.  Some
	    BIOSes may have problems if this is not a multiple of 4.

     -boot-info-table
	    Specifies that a 56-byte table with information of the CD-ROM layout
	    will be patched in at offset 8 in the boot file.  If this option  is
	    given, the boot file is modified in the source filesystem, so make a
	    copy  of  this  file if it cannot be easily regenerated!  See the EL
	    TORITO BOOT INFO TABLE section for a description of this table.

     -C last_sess_start,next_sess_start
	    This option is needed to create a CD Extra or the image of a  second
	    session or a higher-level session for a multisession disc.	-C takes
	    two  numbers  separated by a comma. The first is the first sector in
	    the last session of the disc that should be appended to.  The second
	    number is the starting sector number of the new session.   The  cor-
	    rect numbers may be retrieved by calling wodim -msinfo ...	If -C is
	    used  in  conjunction  with -M, genisoimage will create a filesystem
	    image that is intended to be a continuation of the previous session.
	    If -C is used without -M, genisoimage will create a filesystem image
	    that is intended to be used for a second session on a CD Extra. This
	    is a multisession CD that holds audio data in the first session  and
	    an ISO9660 filesystem in the second session.

     -c boot_catalog
	    Specifies  the  path  and filename of the boot catalog, which is re-
	    quired for an El Torito bootable CD. The pathname must  be	relative
	    to	the source path specified to genisoimage.  This file will be in-
	    serted into the output tree and not created in the	source	filesys-
	    tem, so be sure the specified filename does not conflict with an ex-
	    isting  file, or it will be excluded. Usually a name like boot.cata-
	    log is chosen.

	    If -sort has not been specified, the boot catalog  sorted  with  low
	    priority  (+1)  to	the  beginning of the medium.  If you don't like
	    this, you need to specify a sort weight of 0 for the boot catalog.

     -check-oldnames
	    Check all filenames imported from the  old	session  for  compliance
	    with the ISO9660 file naming rules.  Without this option, only names
	    longer  than 31 characters are checked, as these files are a serious
	    violation of the ISO9660 standard.

     -check-session file
	    Check all  old  sessions  for  compliance  with  actual  genisoimage
	    ISO9660  file  naming  rules.  This is a high-level option that com-
	    bines -M file -C 0,0 -check-oldnames.  For the parameter  file,  see
	    the description of -M.

     -copyright file
	    Specifies  copyright  information, typically a filename on the disc.
	    There is space  for  37  characters.   Equivalent  to  COPY  in  the
	    .genisoimagerc file.

     -d     Do not append a period to files that do not have one.
	    This  violates  the ISO9660 standard, but it happens to work on many
	    systems.  Use with caution.

     -D     Do not use deep directory relocation, and instead just pack them  in
	    the way we see them.
	    If	ISO9660:1999  has  not	been selected, this violates the ISO9660
	    standard, but it happens to work on many systems.  Use with caution.

     -dir-mode mode
	    Overrides the mode of directories used to create the image to  mode,
	    specified  as  4 digits of permission bits as in chmod(1).	This op-
	    tion automatically enables Rock Ridge extensions.

     -dvd-video
	    Generate a DVD-Video compliant UDF filesystem. This is done by sort-
	    ing the order of the content of the appropriate files and by  adding
	    padding  between  the  files  if needed.  Note that the sorting only
	    works if the DVD-Video filenames include uppercase characters only.

	    Note that in order to get a DVD-Video  compliant  filesystem  image,
	    you  need to prepare a DVD-Video compliant directory tree.	This re-
	    quires a directory VIDEO_TS (all caps) in the root directory of  the
	    resulting  DVD,  and  usually  another directory AUDIO_TS.	VIDEO_TS
	    needs to include all needed files (filenames must be all caps) for a
	    compliant DVD-Video filesystem.

     -f     Follow symbolic links when generating the filesystem.  When this op-
	    tion is not in use, symbolic links will be entered using Rock  Ridge
	    if enabled, otherwise they will be ignored.

     -file-mode mode
	    Overrides  the  mode  of  regular  files used to create the image to
	    mode, specified as 4 digits of permission bits as in chmod(1).  This
	    option automatically enables Rock Ridge extensions.

     -gid gid
	    Overrides the group ID read from the source files to  the  value  of
	    gid.  Specifying this option automatically enables Rock Ridge exten-
	    sions.

     -gui   Switch the behaviour for a GUI. This currently makes the output more
	    verbose but may have other effects in the future.

     -graft-points
	    Allow use of graft points for filenames. If this option is used, all
	    filenames  are  checked for graft points. The filename is divided at
	    the first unescaped equal sign. All occurrences of `\' and `=' char-
	    acters must be escaped with `\' if -graft-points has been specified.

     -hide glob
	    Hide any files matching glob, a shell wildcard pattern,  from  being
	    seen  in  the  ISO9660  or Rock Ridge directory.  glob may match any
	    part of the filename or path.  If glob matches a directory, the con-
	    tents of that directory will be hidden.  In order to match a  direc-
	    tory  name,  make  sure the pathname does not include a trailing `/'
	    character.	All the hidden files will still be written to the output
	    CD image file.  See also -hide-joliet, and README.hide.  This option
	    may be used multiple times.

     -hide-list file
	    A file containing a list of  shell	wildcards  to  be  hidden.   See
	    -hide.

     -hidden glob
	    Add the hidden (existence) ISO9660 directory attribute for files and
	    directories matching glob, a shell wildcard pattern.  This attribute
	    will  prevent  the files from being shown by some MS-DOS and Windows
	    commands.  glob may match any part of the filename or path.  In  or-
	    der  to  match a directory name, make sure the pathname does not in-
	    clude a trailing `/' character.  This option may  be  used	multiple
	    times.

     -hidden-list file
	    A  file  containing  a list of shell wildcards to get the hidden at-
	    tribute.  See -hidden.

     -hide-joliet glob
	    Hide files and directories matching glob, a shell wildcard	pattern,
	    from being seen in the Joliet directory.  glob may match any part of
	    the  filename or path.  If glob matches a directory, the contents of
	    that directory will be hidden.  In order to match a directory  name,
	    make  sure	the  pathname does not include a trailing `/' character.
	    All the hidden files will still be written to the  output  CD  image
	    file.    This   option   is  usually  used	with  -hide.   See  also
	    README.hide.  This option may be used multiple times.

     -hide-joliet-list file
	    A file containing a list of shell wildcards to be  hidden  from  the
	    Joliet tree.  See -hide-joliet.

     -hide-joliet-trans-tbl
	    Hide  the TRANS.TBL files from the Joliet tree.  These files usually
	    don't make sense in the Joliet world as they list the real name  and
	    the ISO9660 name which may both be different from the Joliet name.

     -hide-rr-moved
	    Rename  the  directory RR_MOVED to .rr_moved in the Rock Ridge tree.
	    It seems to be impossible to completely hide the RR_MOVED  directory
	    from  the  Rock Ridge tree.  This option only makes the visible tree
	    less confusing for people who don't know what this directory is for.
	    If you need to have no RR_MOVED directory at all, you should use -D.
	    Note that if -D has been specified, the resulting filesystem is  not
	    ISO9660  level-1  compliant and will not be readable on MS-DOS.  See
	    also the NOTES section.

     -input-charset charset
	    Input charset that defines the characters used in  local  filenames.
	    To	get  a	list  of  valid  charset  names,  call	genisoimage -in-
	    put-charset help.  To get a 1:1 mapping,  you  may	use  default  as
	    charset name. The default initial values are cp437 on DOS-based sys-
	    tems  and  iso8859-1  on  all other systems.  See the CHARACTER SETS
	    section below for more details.

     -output-charset charset
	    Output charset that defines the characters that will be used in Rock
	    Ridge filenames.  Defaults to the input charset.  See CHARACTER SETS
	    section below for more details.

     -iso-level level
	    Set the ISO9660 conformance level. Valid numbers are 1 to 4.

	    With level 1, files may only consist of one  section  and  filenames
	    are restricted to 8.3 characters.

	    With level 2, files may only consist of one section.

	    With level 3, no restrictions (other than ISO-9660:1988) do apply.

	    With all ISO9660 levels from 1 to 3, all filenames are restricted to
	    uppercase  letters,  numbers and underscores (_). Filenames are lim-
	    ited to 31 characters, directory nesting is limited to 8 levels, and
	    pathnames are limited to 255 characters.

	    Level 4 officially	does  not  exist  but  genisoimage  maps  it  to
	    ISO-9660:1999, which is ISO9660 version 2.

	    With  level 4, an enhanced volume descriptor with version number and
	    file structure version number set to 2 is emitted.	Directory  nest-
	    ing  is not limited to 8 levels, there is no need for a file to con-
	    tain a dot and the dot has no special meaning, filenames do not have
	    version numbers, and filenames can be up to 207 characters long,  or
	    197 characters if Rock Ridge is used.

	    When creating Version 2 images, genisoimage emits an enhanced volume
	    descriptor,  similar  but not identical to a primary volume descrip-
	    tor. Be careful not to use broken software to  make  ISO9660  images
	    bootable  by  assuming  a second PVD copy and patching this putative
	    PVD copy into an El Torito VD.

     -J     Generate Joliet directory records in  addition  to	regular  ISO9660
	    filenames.	 This  is primarily useful when the discs are to be used
	    on Windows machines.  Joliet filenames are specified in Unicode  and
	    each  path	component can be up to 64 Unicode characters long.  Note
	    that Joliet is not a standard -- only Microsoft  Windows  and  Linux
	    systems  can  read Joliet extensions.  For greater portability, con-
	    sider using both Joliet and Rock Ridge extensions.

     -joliet-long
	    Allow Joliet filenames to be up to 103 Unicode  characters,  instead
	    of	64.   This breaks the Joliet specification, but appears to work.
	    Use with caution.

     -jcharset charset
	    A combination of -J -input-charset charset.  See the CHARACTER  SETS
	    section below for more details.

     -l     Allow  full  31-character  filenames.  Normally the ISO9660 filename
	    will be in an 8.3 format  which  is  compatible  with  MS-DOS,  even
	    though the ISO9660 standard allows filenames of up to 31 characters.
	    If you use this option, the disc may be difficult to use on a MS-DOS
	    system, but will work on most other systems.  Use with caution.

     -L     Outdated option; use -allow-leading-dots instead.

     -jigdo-jigdo jigdo_file
	    Produce  a	jigdo .jigdo metadata file as well as the filesystem im-
	    age.  See the JIGDO NOTES section below for more information.

     -jigdo-template template_file
	    Produce a jigdo .template file as well as the filesystem image.  See
	    the JIGDO NOTES section below for more information.

     -jigdo-min-file-size size
	    Specify the minimum size for a file to be listed in the .jigdo file.
	    Default (and minimum allowed) is 1KB. See the  JIGDO  NOTES  section
	    below for more information.

     -jigdo-force-md5 path
	    Specify  a	file pattern where files must be contained in the exter-
	    nally-supplied MD5 list as supplied by  -md5-list.	 See  the  JIGDO
	    NOTES section below for more information.

     -jigdo-exclude path
	    Specify  a file pattern where files will not be listed in the .jigdo
	    file. See the JIGDO NOTES section below for more information.

     -jigdo-map path
	    Specify a pattern mapping for the  jigdo  file  (e.g.   Debian=/mir-
	    ror/debian).   See	the  JIGDO NOTES section below for more informa-
	    tion.

     -md5-list md5_file
	    Specify a file containing the MD5sums, sizes and  pathnames  of  the
	    files to be included in the .jigdo file. See the JIGDO NOTES section
	    below for more information.

     -jigdo-template-compress algorithm
	    Specify  a	compression algorithm to use for template date. gzip and
	    bzip2 are currently supported, and gzip  is  the  default.	See  the
	    JIGDO NOTES section below for more information.

     -log-file log_file
	    Redirect  all  error, warning and informational messages to log_file
	    instead of the standard error.

     -m glob
	    Exclude files matching glob, a shell wildcard  pattern,  from  being
	    written  to CD-ROM.  glob may match either the filename component or
	    the full pathname.	This option may be used multiple times.  For ex-
	    ample:

		 genisoimage -o rom -m '*.o' -m core -m foobar

	    would exclude all files ending in `.o', or	called	core  or  foobar
	    from  the image.  Note that if you had a directory called foobar, it
	    too (and of course all its descendants) would be excluded.

     -exclude-list file
	    A file containing a list of shell wildcards to be excluded.  See -m.

     -max-iso9660-filenames
	    Allow ISO9660 filenames to be up to 37 characters long.  This option
	    enables -N as the extra name space is taken from the space	reserved
	    for file version numbers.
	    This  violates  the ISO9660 standard, but it happens to work on many
	    systems.  Although a  conforming  application  needs  to  provide  a
	    buffer  space of at least 37 characters, discs created with this op-
	    tion may cause a buffer overflow in the  reading  operating  system.
	    Use with extreme care.

     -M path

     -M device

     -dev device
	    Specifies path to existing ISO9660 image to be merged. The alternate
	    form  takes a SCSI device specifier that uses the same syntax as the
	    dev= parameter of wodim.  The output of genisoimage will  be  a  new
	    session  which  should get written to the end of the image specified
	    in -M.  Typically this requires multisession capability for  the  CD
	    recorder  used  to write the image.  This option may only be used in
	    conjunction with -C.

     -N     Omit version numbers from ISO9660 filenames.
	    This violates the ISO9660 standard, but no one really uses the  ver-
	    sion numbers anyway.  Use with caution.

     -new-dir-mode mode
	    Specify  the mode, a 4-digit number as used in chmod(1), to use when
	    creating new directories in the filesystem image.	The  default  is
	    0555.

     -nobak

     -no-bak
	    Exclude backup files files on the ISO9660 filesystem; that is, file-
	    names  that contain the characters `~' or `#' or end in .bak.  These
	    are typically backup files for Unix text editors.

     -force-rr
	    Do not use the automatic Rock Ridge attributes recognition for  pre-
	    vious  sessions.   This can work around problems with images created
	    by, e.g., NERO Burning ROM.

     -no-rr
	    Do not use the Rock Ridge attributes from previous	sessions.   This
	    may help to avoid problems when genisoimage finds illegal Rock Ridge
	    signatures on an old session.

     -no-split-symlink-components
	    Don't  split  the  symlink	components, but begin a new Continuation
	    Area (CE) instead. This may waste some space, but  the  SunOS  4.1.4
	    cdrom driver has a bug in reading split symlink components.

	    It is questionable whether this option is useful nowadays.

     -no-split-symlink-fields
	    Don't  split  the  symlink fields, but begin a new Continuation Area
	    (CE) instead. This may waste some space, but the SunOS 4.1.4 and So-
	    laris 2.5.1 cdrom driver have a bug in reading split symlink  fields
	    (a `/' can be dropped).

	    It is questionable whether this option is useful nowadays.

     -o filename
	    Specify  the output file for the the ISO9660 filesystem image.  This
	    can be a disk file, a tape drive, or it can correspond  directly  to
	    the  device name of the optical disc writer.  If not specified, std-
	    out is used.  Note that the output can also be a block device for  a
	    regular  disk partition, in which case the ISO9660 filesystem can be
	    mounted normally to verify that it was generated correctly.

     -pad   Pad the end of the whole image by 150 sectors (300 kB).  This option
	    is enabled by default.  If used in combination with -B,  padding  is
	    inserted between the ISO9660 partition and the boot partitions, such
	    that  the  first  boot partition starts on a sector number that is a
	    multiple of 16.

	    The padding is needed as many operating systems (e.g. Linux)  imple-
	    ment  read-ahead  bugs in their filesystem I/O. These bugs result in
	    read errors on files that are located near the end of a track,  par-
	    ticularly  if  the disc is written in Track At Once mode, or where a
	    CD audio track follows the data track.

     -no-pad
	    Do not pad the end by 150 sectors (300 kB) and do not make	the  the
	    boot partitions start on a multiple of 16 sectors.

     -path-list file
	    A file containing a list of pathspec directories and filenames to be
	    added  to  the  ISO9660  filesystem.  This	list  of  pathspecs  are
	    processed after any that appear on the command line. If the argument
	    is -, the list is read from the standard input.

     -P     Outdated option; use -publisher instead.

     -publisher publisher_id
	    Specifies a text string that will be written into the volume header.
	    This should describe the publisher of the  CD-ROM,	usually  with  a
	    mailing  address  and  phone number.  There is space for 128 charac-
	    ters.  Equivalent to PUBL in the .genisoimagerc file.

     -p preparer_id
	    Specifies a text string that will be written into the volume header.
	    This should describe the preparer of  the  CD-ROM,	usually  with  a
	    mailing  address  and  phone number.  There is space for 128 charac-
	    ters.  Equivalent to PREP in the .genisoimagerc file.

     -print-size
	    Print estimated filesystem size in	multiples  of  the  sector  size
	    (2048  bytes)  and exit. This option is needed for Disk At Once mode
	    and with some CD-R drives when piping  directly  into  wodim,  cases
	    where  wodim  needs  to know the size of the filesystem image in ad-
	    vance.  Old versions of mkisofs wrote this information (among  other
	    information)  to stderr.  As this turns out to be hard to parse, the
	    number without any other information is now printed on  stdout  too.
	    If	you  like  to  write  a simple shell script, redirect stderr and
	    catch the number from stdout.  This may be done with:

		 cdblocks=` genisoimage -print-size -quiet ... `
		 genisoimage ... | wodim ... tsize=${cdblocks}s -

     -quiet
	    This makes genisoimage even less verbose.  No progress  output  will
	    be provided.

     -R     Generate  SUSP  and RR records using the Rock Ridge protocol to fur-
	    ther describe the files on the ISO9660 filesystem.

     -r     This is like the -R option, but file ownership and modes are set  to
	    more  useful  values.  The uid and gid are set to zero, because they
	    are usually only useful on the author's system, and  not  useful  to
	    the  client.  All the file read bits are set true, so that files and
	    directories are globally readable on the client.  If any execute bit
	    is set for a file, set all of the execute bits, so that  executables
	    are globally executable on the client.  If any search bit is set for
	    a  directory,  set	all  of the search bits, so that directories are
	    globally searchable on the client.	All write bits are cleared,  be-
	    cause  the filesystem will be mounted read-only in any case.  If any
	    of the special mode bits are set, clear them, because file locks are
	    not useful on a read-only filesystem, and set-id bits are not desir-
	    able for uid 0 or gid 0.  When used on Win32, the execute bit is set
	    on all files. This is a result of the lack of  file  permissions  on
	    Win32  and	the  Cygwin POSIX emulation layer.  See also -uid, -gid,
	    -dir-mode, -file-mode and -new-dir-mode.

     -relaxed-filenames
	    Allows ISO9660 filenames to include all 7-bit ASCII  characters  ex-
	    cept lowercase letters.
	    This  violates  the ISO9660 standard, but it happens to work on many
	    systems.  Use with caution.

     -root dir
	    Moves all files and directories into dir in the image. This  is  es-
	    sentially the same as using -graft-points and adding dir in front of
	    every  pathspec,  but is easier to use.  dir may actually be several
	    levels deep. It is created with the same permissions as other  graft
	    points.

     -old-root dir
	    This  option  is necessary when writing a multisession image and the
	    previous (or even older) session was written with -root dir.   Using
	    a  directory name not found in the previous session causes genisoim-
	    age to abort with an error.  Without this option, genisoimage  would
	    not  be  able  to find unmodified files and would be forced to write
	    their data into the image once more.  -root and -old-root are  meant
	    to	be used together to do incremental backups.  The initial session
	    would e.g. use: genisoimage -root backup_1 dirs.  The next incremen-
	    tal backup with genisoimage -root backup_2 -old-root  backup_1  dirs
	    would take another snapshot of these directories. The first snapshot
	    would  be  found  in  backup_1, the second one in backup_2, but only
	    modified or new files need to be written into  the	second	session.
	    Without  these  options, new files would be added and old ones would
	    be preserved. But old ones would be overwritten if the file was mod-
	    ified. Recovering the files by copying the whole directory back from
	    CD would also restore files that were deleted intentionally. Access-
	    ing several older versions of a file requires support by the operat-
	    ing system to choose which sessions are to be mounted.

     -sort sort_file
	    Sort file locations on the media. Sorting is controlled  by  a  file
	    that  contains  pairs of filenames and sorting offset weighting.  If
	    the weighting is higher, the file will be located closer to the  be-
	    ginning  of  the  media, if the weighting is lower, the file will be
	    located closer to the end of the media. There must be only one space
	    or tabs character between the filename and the weight and the weight
	    must be the last characters on a line. The filename is taken to  in-
	    clude  all the characters up to, but not including the last space or
	    tab character on a line. This is to allow for space characters to be
	    in, or at the end of a filename.  This option does not sort the  or-
	    der  of the filenames that appear in the ISO9660 directory. It sorts
	    the order in which the file data is written to the CD  image,  which
	    is	useful	in  order  to  optimize  the  data  layout  on a CD. See
	    README.sort for more details.

     -sparc-boot img_sun4,img_sun4c,img_sun4m,img_sun4d,img_sun4e
	    See -B above.

     -sparc-label label
	    Set the Sun disk label name for the Sun disk label that  is  created
	    with -sparc-boot.

     -split-output
	    Split  the	output	image  into  several files of approximately 1 GB
	    each.  This helps to create DVD-sized ISO9660  images  on  operating
	    systems  without  large  file  support.  wodim will concatenate more
	    than one file into a single track if writing  to  a  DVD.	To  make
	    -split-output  work,  -o  filename	must be specified. The resulting
	    output  images  will  be  named:  filename_00,  filename_01,   file-
	    name_02....

     -stream-media-size #
	    Select  streaming  operation  and  set  the media size to # sectors.
	    This allows you to pipe  the  output  of  the  tar(1)  program  into
	    genisoimage  and to create an ISO9660 filesystem without the need of
	    an intermediate tar archive file.  If this option  has  been  speci-
	    fied,  genisoimage reads from stdin and creates a file with the name
	    STREAM.IMG.  The maximum size of the file (with padding) is 200 sec-
	    tors less than the specified media size. If -no-pad has been  speci-
	    fied,  the	file  size  is	50 sectors less than the specified media
	    size.  If the file is smaller, genisoimage will write padding.  This
	    may take awhile.

	    The  option  -stream-media-size  creates  simple ISO9660 filesystems
	    only and may not used together with multisession or hybrid	filesys-
	    tem options.

     -stream-file-name name
	    Reserved for future use.

     -sunx86-boot UFS_img,,,AUX1_img
	    Specifies  a  comma-separated  list  of  filesystem  images that are
	    needed to make a bootable CD for Solaris x86 systems.

	    Note that partition 1 is used for the ISO9660 image and that  parti-
	    tion  2  is  the whole disk, so partition 1 and 2 may not be used by
	    external partition data.  The first image file is mapped  to  parti-
	    tion  0.  There may be empty fields in the comma-separated list, and
	    list entries for partition 1 and 2 must be empty.  The maximum  num-
	    ber of supported partitions is 8 (although the Solaris x86 partition
	    table  could  support  up  to 16 partitions), so it is impossible to
	    specify more than 6 partition images.  This option	is  required  to
	    make a bootable CD for Solaris x86 systems.

	    If	-sunx86-boot has been specified, the first sector of the result-
	    ing image will contain a PC fdisk label with  a  Solaris  type  0x82
	    fdisk  partition  that  starts at offset 512 and spans the whole CD.
	    In addition, for the Solaris type 0x82 fdisk partition, there  is  a
	    SVr4  disk label at offset 1024 in the first sector of the CD.  This
	    disk label specifies slice	0  for	the  first  (usually  UFS  type)
	    filesystem	image  that  is  used to boot the PC and slice 1 for the
	    ISO9660 image.  Slice 2 spans the whole CD slice 3 ... slice  7  may
	    be	used  for  additional filesystem images that have been specified
	    with this option.

	    A Solaris x86 boot CD uses a 1024 byte sized primary boot that  uses
	    the  El-Torito  no-emulation  boot mode and a secondary generic boot
	    that is in CD sectors 1..15.  For this  reason,  both  -b  bootimage
	    -no-emul-boot and -G genboot must be specified.

     -sunx86-label label
	    Set the SVr4 disk label name for the SVr4 disk label that is created
	    with -sunx86-boot.

     -sysid ID
	    Specifies the system ID.  There is space for 32 characters.  Equiva-
	    lent to SYSI in the .genisoimagerc file.

     -T     Generate a file TRANS.TBL in each directory on the CD-ROM, which can
	    be used on non-Rock Ridge-capable systems to help establish the cor-
	    rect  filenames.  There is also information present in the file that
	    indicates the major and minor numbers for block  and  character  de-
	    vices, and each symlink has the name of the link file given.

     -table-name table_name
	    Alternative  translation table filename (see above). Implies -T.  If
	    you are creating a multisession image you must use the same name  as
	    in the previous session.

     -ucs-level level
	    Set  Unicode  conformance level in the Joliet SVD. The default level
	    is 3.  It may be set to 1..3 using this option.

     -udf   Include UDF filesystem support in the  generated  filesystem  image.
	    UDF  support is currently in alpha status and for this reason, it is
	    not possible to create UDF-only images.   UDF  data  structures  are
	    currently  coupled	to the Joliet structures, so there are many pit-
	    falls with the current implementation. There is no UID/GID	support,
	    there  is  no POSIX permission support, there is no support for sym-
	    links.  Note that UDF wastes the space from sector ~20 to sector 256
	    at the beginning of the disc in addition to  the  space  needed  for
	    real UDF data structures.

     -uid uid
	    Overrides  the  uid  read from the source files to the value of uid.
	    Specifying this option automatically enables Rock Ridge extensions.

     -use-fileversion
	    The option -use-fileversion allows genisoimage to use  file  version
	    numbers  from  the	filesystem.   If  the  option  is not specified,
	    genisoimage creates a version number of 1 for all files.  File  ver-
	    sions  are	strings in the range ;1 to ;32767 This option is the de-
	    fault on VMS.

     -U     Allows "untranslated" filenames, completely  violating  the  ISO9660
	    standards  described  above.   Enables the following flags: -d -l -N
	    -allow-leading-dots -relaxed-filenames -allow-lowercase  -allow-mul-
	    tidot  -no-iso-translate.  Allows more than one `.' character in the
	    filename, as well as mixed-case filenames.	This is useful on HP-UX,
	    where the built-in cdfs filesystem does  not  recognize  any  exten-
	    sions. Use with extreme caution.

     -no-iso-translate
	    Do	not  translate	the characters `#' and `~' which are invalid for
	    ISO9660 filenames.	Although invalid,  these  characters  are  often
	    used by Microsoft systems.
	    This  violates  the ISO9660 standard, but it happens to work on many
	    systems.  Use with caution.

     -V volid
	    Specifies the volume ID (volume name or label) to  be  written  into
	    the  master block.	There is space for 32 characters.  Equivalent to
	    VOLI in the .genisoimagerc file.  The volume ID is used as the mount
	    point by the Solaris volume manager and as a  label  assigned  to  a
	    disc on various other platforms such as Windows and Apple Mac OS.

     -volset ID
	    Specifies  the  volume  set  ID.  There is space for 128 characters.
	    Equivalent to VOLS in the .genisoimagerc file.

     -volset-size #
	    Sets the volume set size to #.  The volume set size is the number of
	    CDs that are in a CD volume set.  A volume set is  a  collection  of
	    one or more volumes, on which a set of files is recorded.

	    Volume Sets are not intended to be used to create a set numbered CDs
	    that  are  part  of e.g. a Operation System installation set of CDs.
	    Volume Sets are rather used to record  a  big  directory  tree  that
	    would  not fit on a single volume.	Each volume of a Volume Set con-
	    tains a description of  all  the  directories  and	files  that  are
	    recorded on the volumes where the sequence numbers are less than, or
	    equal to, the assigned Volume Set Size of the current volume.

	    genisoimage currently does not support a -volset-size that is larger
	    than 1.

	    The  option  -volset-size  must be specified before -volset-seqno on
	    each command line.

     -volset-seqno #
	    Sets the volume set sequence number to #.  The volume  set	sequence
	    number  is	the index number of the current CD in a CD set.  The op-
	    tion -volset-size must be specified  before  -volset-seqno	on  each
	    command line.

     -v     Verbose  execution.  If given twice on the command line, extra debug
	    information will be printed.

     -x glob
	    Identical to -m glob.

     -z     Generate special RRIP records for  transparently  compressed  files.
	    This  is only of use and interest for hosts that support transparent
	    decompression, such as Linux 2.4.14 or later.  You must  specify  -R
	    or	-r to enable Rock Ridge, and generate compressed files using the
	    mkzftree utility before running genisoimage.  Note that  transparent
	    compression  is  a	nonstandard Rock Ridge extension.  The resulting
	    disks are only transparently readable if used on  Linux.   On  other
	    operating  systems	you will need to call mkzftree by hand to decom-
	    press the files.

HFS OPTIONS
     -hfs   Create an ISO9660/HFS hybrid CD. This option should be used in  con-
	    junction  with  the  -map, -magic and/or the various double dash op-
	    tions given below.

     -apple
	    Create an ISO9660 CD with Apple's extensions. Similar to  -hfs,  ex-
	    cept  that the Apple Extensions to ISO9660 are added instead of cre-
	    ating an HFS hybrid volume.  Former genisoimage versions did include
	    Rock Ridge attributes by default if -apple was specified. This  ver-
	    sions  of  genisoimage does not do this anymore. If you like to have
	    Rock Ridge attributes, you need to specify this separately.

     -map mapping_file
	    Use the mapping_file to set the CREATOR and TYPE information  for  a
	    file based on the filename's extension. A filename is mapped only if
	    it	is not one of the know Apple/Unix file formats. See the HFS CRE-
	    ATOR/TYPE section below.

     -magic magic_file
	    The CREATOR and TYPE information is set by using a file's magic num-
	    ber (usually the first few bytes of a file). The magic_file is  only
	    used  if  a file is not one of the known Apple/Unix file formats, or
	    the filename extension has not been mapped using -map.  See the  HFS
	    CREATOR/TYPE section below for more details.

     -hfs-creator creator
	    Set the default CREATOR for all files. Must be exactly 4 characters.
	    See the HFS CREATOR/TYPE section below for more details.

     -hfs-type type
	    Set  the  default  TYPE for all files. Must be exactly 4 characters.
	    See the HFS CREATOR/TYPE section below for more details.

     -probe
	    Search the contents of files for all the known Apple/Unix file  for-
	    mats.   See  the  HFS  MACINTOSH FILE FORMATS section below for more
	    about these formats.  However, the only way to check  for  MacBinary
	    and  AppleSingle  files is to open and read them, so this option may
	    increase processing time. It is better to use  one	or  more  double
	    dash options given below if the Apple/Unix formats in use are known.

     -no-desktop
	    Do	not  create (empty) Desktop files. New HFS Desktop files will be
	    created when the CD is used on a Macintosh (and stored in the System
	    Folder).  By default, empty Desktop files are added to the HFS  vol-
	    ume.

     -mac-name
	    Use  the  HFS filename as the starting point for the ISO9660, Joliet
	    and Rock Ridge filenames. See the HFS  MACINTOSH  FILENAMES  section
	    below for more information.

     -boot-hfs-file driver_file
	    Installs  the  driver_file that may make the CD bootable on a Macin-
	    tosh. See the HFS BOOT DRIVER section below. (Alpha).

     -part  Generate an HFS partition table. By default, no partition  table  is
	    generated,	but some older Macintosh CD-ROM drivers need an HFS par-
	    tition table on the CD-ROM to be able to recognize a hybrid CD-ROM.

     -auto AutoStart_file
	    Make the HFS CD use the QuickTime 2.0 Autostart feature to launch an
	    application or document. The given filename must be the  name  of  a
	    document  or  application  located	at  the top level of the CD. The
	    filename must be less than 12 characters. (Alpha).

     -cluster-size size
	    Set the size in bytes of the cluster or allocation units of  PC  Ex-
	    change  files.  Implies --exchange.  See the HFS MACINTOSH FILE FOR-
	    MATS section below.

     -hide-hfs glob
	    Hide glob, a shell wildcard pattern, from the HFS volume.  The  file
	    or	directory  will  still exist in the ISO9660 and/or Joliet direc-
	    tory.  glob may match any part of the filename.  Multiple globs  may
	    be excluded.  Example:

		 genisoimage -o rom -hfs -hide-hfs '*.o' -hide-hfs foobar

	    would exclude all files ending in `.o' or called foobar from the HFS
	    volume.  Note that if you had a directory called foobar, it too (and
	    of course all its descendants) would be excluded.  The glob can also
	    be a path name relative to the source directories given on the  com-
	    mand line. Example:

		 genisoimage -o rom -hfs -hide-hfs src/html src

	    would  exclude  just  the file or directory called html from the src
	    directory.	Any other file or directory called html in the tree will
	    not be excluded.  Should be used with -hide and/or -hide-joliet.  In
	    order to match a directory name, make sure the pattern does not  in-
	    clude a trailing `/' character. See README.hide for more details.

     -hide-hfs-list file
	    Specify  a	file containing a list of wildcard patterns to be hidden
	    as in -hide-hfs.

     -hfs-volid hfs_volid
	    Volume name for the HFS partition. This is the name that is assigned
	    to the disc on a Macintosh and replaces the volid used with -V.

     -icon-position
	    Use the icon position information, if it exists, from the Apple/Unix
	    file.  The icons will appear in the same position as they would on a
	    Macintosh desktop. Folder location and size on  screen,  its  scroll
	    positions,	folder	View (view as Icons, Small Icons, etc.) are also
	    preserved.	(Alpha).

     -root-info file
	    Set the location, size on screen, scroll positions, folder View etc.
	    for the root folder of an HFS volume. See README.rootinfo  for  more
	    information.  (Alpha)

     -prep-boot file
	    PReP  boot image file. Up to 4 are allowed. See README.prep_boot for
	    more information.  (Alpha)

     -chrp-boot
	    Add CHRP boot header.

     -input-hfs-charset charset
	    Input charset that defines the characters used in HFS filenames when
	    used with -mac-name.  The default charset is  cp10000  (Mac  Roman).
	    See  the  CHARACTER  SETS and HFS MACINTOSH FILENAMES sections below
	    for more details.

     -output-hfs-charset charset
	    Output charset that defines the characters that will be used in  the
	    HFS filenames. Defaults to the input charset. See the CHARACTER SETS
	    section below for more details.

     -hfs-unlock
	    By	default,  genisoimage  will create an HFS volume that is locked.
	    This option leaves the volume unlocked so  that  other  applications
	    (e.g.  hfsutils) can modify the volume. See the HFS PROBLEMS/LIMITA-
	    TIONS section below for warnings about using this option.

     -hfs-bless folder_name
	    "Bless"  the  given  directory  (folder). This is usually the System
	    Folder and is used in creating HFS bootable CDs. The name of the di-
	    rectory must be the whole path name as genisoimage sees  it.   E.g.,
	    if	the given pathspec is ./cddata and the required folder is called
	    System Folder, the whole path name is "/cddata/System  Folder"  (re-
	    member to use quotes if the name contains spaces).

     -hfs-parms parameters
	    Override  certain  parameters used to create the HFS filesystem. Un-
	    likely to be used in normal circumstances.	See  the  libhfs_iso/hy-
	    brid.h source file for details.

     --cap  Look  for  AUFS  CAP Macintosh files. Search for CAP Apple/Unix file
	    formats only. Searching for the other possible Apple/Unix file  for-
	    mats is disabled, unless other double dash options are given.

     --netatalk
	    Look for NETATALK Macintosh files

     --double
	    Look for AppleDouble Macintosh files

     --ethershare
	    Look for Helios EtherShare Macintosh files

     --ushare
	    Look for IPT UShare Macintosh files

     --exchange
	    Look for PC Exchange Macintosh files

     --sgi  Look for SGI Macintosh files

     --xinet
	    Look for XINET Macintosh files

     --macbin
	    Look for MacBinary Macintosh files

     --single
	    Look for AppleSingle Macintosh files

     --dave
	    Look for Thursby Software Systems DAVE Macintosh files

     --sfm  Look for Microsoft's Services for Macintosh files (NT only) (Alpha)

     --osx-double
	    Look for Mac OS X AppleDouble Macintosh files

     --osx-hfs
	    Look for Mac OS X HFS Macintosh files

CHARACTER SETS
     genisoimage  processes  filenames	in  a  POSIX-compliant way as strings of
     8-bit characters.	To represent all codings for all languages, 8-bit  char-
     acters  are  not sufficient.  Unicode or ISO-10646 define character codings
     that need at least 21 bits to represent all known languages.  They  may  be
     represented  with	UTF-32,  UTF-16  or  UTF-8  coding.  UTF-32 uses a plain
     32-bit coding but seems to be uncommon.  UTF-16 is used by  Microsoft  with
     Win32  with  the disadvantage that 16-bit characters are not compliant with
     the POSIX filesystem interface.

     Modern Unix operating systems may use UTF-8  coding  for  filenames.   Each
     32-bit  character	is  represented  by  one or more 8-bit characters.  If a
     character is coded in ISO-8859-1 (used in Central Europe and North America)
     is maps 1:1 to a UTF-32 or UTF-16 coded Unicode character.  If a  character
     is coded in 7-Bit ASCII (used in USA and other countries with limited char-
     acter  set)  is maps 1:1 to a UTF-32, UTF-16 or UTF-8 coded Unicode charac-
     ter.  Character codes that cannot be represented as a single byte in  UTF-8
     (if  the  value  is  > 0x7F) use escape sequences that map to more than one
     8-bit character.

     If all operating systems used UTF-8, genisoimage would not need  to  recode
     characters  in filenames.	Unfortunately, Apple uses completely nonstandard
     codings and Microsoft uses a Unicode coding that is not compatible with the
     POSIX filename interface.

     For all non-UTF-8-coded operating systems, the actual character  that  each
     byte  represents depends on the character set or codepage (the name used by
     Microsoft) used by the local operating system -- the characters in a  char-
     acter set will reflect the region or natural language set by the user.

     Usually  character  codes 0x00-0x1f are control characters, codes 0x20-0x7f
     are the 7-bit ASCII characters and (on PCs and Macs) 0x80-0xff are used for
     other characters.

     As there are a lot more than 256 characters/symbols in use,  only	a  small
     subset  are  represented  in  a character set. Therefore the same character
     code may represent a different character in different character sets. So  a
     filename generated, say in central Europe, may not display the same charac-
     ter when viewed on a machine in, say eastern Europe.

     To make matters more complicated, different operating systems use different
     character	sets for the region or language. For example, the character code
     for `e' (small e with acute accent) may be character code	0x82  on  a  PC,
     code 0x8e on a Macintosh, code 0xe9 on a Unix system in western Europe, and
     code 0x000e9 in Unicode.

     As  long as not all operating systems and applications use the same charac-
     ter set as the basis for filenames, it may be necessary  to  specify  which
     character	set  your filenames use in and which character set the filenames
     should appear on the CD.

     There are four options to specify the character sets you want to use:

     -input-charset
	    Defines the local character set you are using on your host	machine.
	    Any  character set conversions that take place will use this charac-
	    ter set as the starting point. The default input character sets  are
	    cp437  on  MS-DOS-based  systems and iso8859-1 on all other systems.
	    If -J is given, the Unicode equivalents of the input  character  set
	    will be used in the Joliet directory.  -jcharset is the same as -in-
	    put-charset -J.

     -output-charset
	    Defines  the character set that will be used with for the Rock Ridge
	    names on the CD.  Defaults to the input character set.

     -input-hfs-charset
	    Defines the HFS character set used for HFS	filenames  decoded  from
	    any  of  the  various Apple/Unix file formats. Only useful when used
	    with -mac-name.  See the HFS MACINTOSH FILENAMES for  more	informa-
	    tion. Defaults to cp10000 (Mac Roman).

     -output-hfs-charset
	    Defines  the HFS character set used to create HFS filenames from the
	    input character set in use. In most cases  this  will  be  from  the
	    character  set given with -input-charset.  Defaults to the input HFS
	    character set.

     There are a number of character sets built in to  genisoimage.   To  get  a
     listing,  use  -input-charset  help.  This list doesn't include the charset
     derived from the current locale, if genisoimage is built  with  iconv  sup-
     port.

     Additional  character  sets  can be read from file for any of the character
     set options by giving a filename as the argument to the options. The  given
     file will only be read if its name does not match one of the built-in char-
     acter sets.

     The  format  of  the  character  set files is the same as the mapping files
     available from http://www.unicode.org/Public/MAPPINGS.  This format is:

	    Column #1 is the input byte code (in hex as 0xXX)
	    Column #2 is the Unicode (in hex as 0xXXXX)
	    The rest of the line is ignored.

     Any blank line, line without two (or more) columns in the above  format  or
     comments  lines  (starting  with  the  # character) are ignored without any
     warnings. Any missing input code is mapped to Unicode character 0x0000.

     Note that, while UTF-8  is  supported,  other  Unicode  encodings	such  as
     UCS-2/UTF-16  and	UCS-4/UTF-32  are not, as POSIX operating systems cannot
     handle them natively.

     A 1:1 character set mapping can be defined by using the keyword default  as
     the  argument to any of the character set options. This is the behaviour of
     old versions of mkisofs.

     The ISO9660 filenames generated from the input filenames are not  converted
     from  the	input character set. The ISO9660 character set is a very limited
     subset of the ASCII characters, so any conversion would be pointless.

     Any character that genisoimage cannot convert will be replaced with  a  `_'
     character.

HFS CREATOR/TYPE
     A	Macintosh  file has two properties associated with it which define which
     application created the file, the CREATOR and what data the file  contains,
     the  TYPE.  Both are (exactly) 4 letter strings. Usually this allows a Mac-
     intosh user to double-click on a file and launch  the  correct  application
     etc.  The CREATOR and TYPE of a particular file can be found by using some-
     thing like ResEdit (or similar) on a Macintosh.

     The CREATOR and TYPE information is stored in all	the  various  Apple/Unix
     encoded files.  For other files it is possible to base the CREATOR and TYPE
     on  the  filename's extension using a mapping file (with -map) and/or using
     the magic number (usually a signature in the first few  bytes)  of  a  file
     (with -magic).  If both these options are given, their order on the command
     line is significant.  If -map is given first, a filename extension match is
     attempted before a magic number match. However, if -magic is given first, a
     magic number match is attempted before a filename extension match.

     If  a  mapping or magic file is not used, or no match is found, the default
     CREATOR and TYPE for all regular files can be set by using entries  in  the
     .genisoimagerc  file  or using -hfs-creator and/or -hfs-type, otherwise the
     default CREATOR and TYPE are Unix and TEXT.

     The format of the mapping file is the same afpfile format as used by  aufs.
     This  file  has  five columns for the extension, file translation, CREATOR,
     TYPE and Comment.	Lines starting with the `#' character are comment  lines
     and are ignored. An example file would be like:

     # Example filename mapping file
     #
     # EXTN   XLate   CREATOR	TYPE	 Comment
     .tif     Raw     '8BIM'	'TIFF'	 "Photoshop TIFF image"
     .hqx     Ascii   'BnHq'	'TEXT'	 "BinHex file"
     .doc     Raw     'MSWD'	'WDBN'	 "Word file"
     .mov     Raw     'TVOD'	'MooV'	 "QuickTime Movie"
     *	      Ascii   'ttxt'	'TEXT'	 "Text file"

     Where:

	    The  first	column	EXTN  defines  the Unix filename extension to be
	    mapped. The default mapping for any filename extension that  doesn't
	    match is defined with the `*' character.

	    The  Xlate	column	defines the type of text translation between the
	    Unix and Macintosh file it is ignored by genisoimage, but is kept to
	    be compatible with aufs(1).  Although genisoimage does not alter the
	    contents of a file, if a binary file has its TYPE set  as  TEXT,  it
	    may  be  read  incorrectly on a Macintosh. Therefore a better choice
	    for the default TYPE may be ????.

	    The CREATOR and TYPE keywords must be 4 characters long and enclosed
	    in single quotes.

	    The comment field is enclosed in double quotes -- it is  ignored  by
	    genisoimage, but is kept to be compatible with aufs.

     The  format of the magic file is almost identical to the magic(5) file used
     by the file(1) command.

     This file has four tab-separated columns for the byte  offset,  type,  test
     and  message.   Lines starting with the `#' character are comment lines and
     are ignored. An example file would be like:

     # Example magic file
     #
     # off   type      test	  message
     0	     string    GIF8	  8BIM GIFf  GIF image
     0	     beshort   0xffd8	  8BIM JPEG  image data
     0	     string    SIT!	  SIT! SIT!  StuffIt Archive
     0	     string    \037\235   LZIV ZIVU  standard Unix compress
     0	     string    \037\213   GNUz ZIVU  gzip compressed data
     0	     string    %!	  ASPS TEXT  Postscript
     0	     string    \004%!	  ASPS TEXT  PC Postscript with a ^D to start
     4	     string    moov	  txtt MooV  QuickTime movie file (moov)
     4	     string    mdat	  txtt MooV  QuickTime movie file (mdat)

     The format of the file is described in magic(5).  The only difference  here
     is  that for each entry in the magic file, the message for the initial off-
     set must be be 4 characters for the CREATOR followed by  4  characters  for
     the  TYPE	-- white space is optional between them. Any other characters on
     this line are ignored.  Continuation lines (starting with a `>')  are  also
     ignored, i.e., only the initial offset lines are used.

     Using -magic may significantly increase processing time as each file has to
     opened and read to find its magic number.

     In summary, for all files, the default CREATOR is Unix and the default TYPE
     is  TEXT.	These can be changed by using entries in the .genisoimagerc file
     or by using -hfs-creator and/or -hfs-type.

     If the a file is in one of the known Apple/Unix formats (and the format has
     been selected), the CREATOR and TYPE are taken from the  values  stored  in
     the Apple/Unix file.

     Other  files can have their CREATOR and TYPE set from their filename exten-
     sion (with -map), or their magic number  (with  -magic).	If  the  default
     match  is	used in the mapping file, these values override the default CRE-
     ATOR and TYPE.

     A	 full	CREATOR/TYPE   database   can	be   found   at   http://www.an-
     gelfire.com/il/szekely/.

HFS MACINTOSH FILE FORMATS
     Macintosh	files  have two parts called the Data and Resource fork.  Either
     may be empty. Unix (and many other OSs) can only cope with files having one
     part (or fork). To add to this, Macintosh files have a number of attributes
     associated with them -- probably the most important are the TYPE  and  CRE-
     ATOR.  Again, Unix has no concept of these types of attributes.

     E.g., a Macintosh file may be a JPEG image where the image is stored in the
     Data  fork  and a desktop thumbnail stored in the Resource fork. It is usu-
     ally the information in the data fork that is useful across platforms.

     Therefore to store a Macintosh file on a Unix filesystem, a way has  to  be
     found  to	cope  with the two forks and the extra attributes (which are re-
     ferred to as the Finder info).  Unfortunately, it seems that every software
     package that stores Macintosh files on Unix has chosen a completely differ-
     ent storage method.

     The Apple/Unix formats that genisoimage (partially) supports are:

     CAP AUFS format
	    Data fork stored in a file. Resource fork in subdirectory  .resource
	    with  same filename as data fork. Finder info in subdirectory .find-
	    erinfo with same filename.

     AppleDouble/Netatalk
	    Data fork stored in a file. Resource fork stored in a file with same
	    name prefixed with `%'. Finder info also stored in	same  `%'  file.
	    Netatalk  uses  the  same  format, but the resource fork/Finder info
	    stored in subdirectory .AppleDouble with same filename as data fork.

     AppleSingle
	    Data structures similar to above, except both forks and Finder  info
	    are stored in one file.

     Helios EtherShare
	    Data  fork stored in a file.  Resource fork and Finder info together
	    in subdirectory .rsrc with same filename as data fork.

     IPT UShare
	    Like the EtherShare format, but the Finder info is	stored	slightly
	    differently.

     MacBinary
	    Both forks and Finder info stored in one file.

     Apple PC Exchange
	    Used  by  Macintoshes to store Apple files on DOS (FAT) disks.  Data
	    fork stored in a file. Resource fork  in  subdirectory  resource.frk
	    (or RESOURCE.FRK).	Finder info as one record in file finder.dat (or
	    FINDER.DAT).  Separate finder.dat for each data fork directory.

	    Note:  genisoimage	needs to know the native FAT cluster size of the
	    disk that the PC Exchange files are on (or have been  copied  from).
	    This size is given by -cluster-size.  The cluster or allocation size
	    can be found by using the DOS utility chkdsk.

	    May  not  work with PC Exchange v2.2 or higher files (available with
	    MacOS 8.1).  DOS  media  containing  PC  Exchange  files  should  be
	    mounted as type msdos (not vfat) when using Linux.

     SGI/XINET
	    Used  by SGI machines when they mount HFS disks. Data fork stored in
	    a file.  Resource fork in subdirectory .HSResource with  same  file-
	    name.   Finder  info  as  one record in file .HSancillary.	Separate
	    .HSancillary for each data fork directory.

     Thursby Software Systems DAVE
	    Allows Macintoshes to store Apple files on SMB servers.   Data  fork
	    stored  in a file. Resource fork in subdirectory resource.frk.  Uses
	    the AppleDouble format to store resource fork.

     Services for Macintosh
	    Format of files stored by NT Servers on NTFS filesystems. Data  fork
	    is stored as filename.  Resource fork stored as a NTFS stream called
	    filename:AFP_Resource.   The  Finder info is stored as a NTFS stream
	    called filename:Afp_AfpInfo.  NTFS streams are normally invisible to
	    the user.

	    Warning: genisoimage only partially supports the SFM format.  If  an
	    HFS  file  or  folder stored on the NT server contains an illegal NT
	    character in its name, NT converts these characters to  Private  Use
	    Unicode characters.  The characters are: " * / < > ? \ | and a space
	    or	period	if  it	is the last character of the filename, character
	    codes 0x01 to 0x1f (control characters) and Apple's apple logo.

	    Unfortunately, these private Unicode characters are not readable  by
	    the  genisoimage NT executable. Therefore any file or directory name
	    containing these characters will be ignored --  including  the  con-
	    tents of any such directory.

     Mac OS X AppleDouble
	    When  HFS/HFS+ files are copied or saved by Mac OS X on to a non-HFS
	    filesystem (e.g. UFS, NFS etc.), the files are stored in AppleDouble
	    format.  Data fork stored in a file. Resource fork stored in a  file
	    with  same	name prefixed with `._'. Finder info also stored in same
	    `._' file.

     Mac OS X HFS (Alpha)
	    Not really an Apple/Unix encoding, but actual HFS/HFS+  files  on  a
	    Mac OS X system. Data fork stored in a file. Resource fork stored in
	    a  pseudo file with the same name with the suffix /rsrc.  The Finder
	    info is only available via a Mac OS X library call.

	    See also README.macosx.

	    Only works when used on Mac OS X.

	    If a file is found with a zero length resource fork and empty  find-
	    erinfo,  it is assumed not to have any Apple/Unix encoding -- there-
	    fore a TYPE and CREATOR can be set using other methods.

     genisoimage will attempt to set the CREATOR, TYPE, date and possibly  other
     flags from the finder info. Additionally, if it exists, the Macintosh file-
     name  is set from the finder info, otherwise the Macintosh name is based on
     the Unix filename -- see the HFS MACINTOSH FILENAMES section below.

     When using -apple, the TYPE and CREATOR are stored in the	optional  System
     Use  or  SUSP field in the ISO9660 Directory Record -- in much the same way
     as the Rock Ridge attributes are. In fact to make life easy, the Apple  ex-
     tensions  are  added at the beginning of the existing Rock Ridge attributes
     (i.e., to get the Apple extensions you get the  Rock  Ridge  extensions  as
     well).

     The  Apple  extensions require the resource fork to be stored as an ISO9660
     associated file. This is just like any normal file stored	in  the  ISO9660
     filesystem  except  that  the  associated file flag is set in the Directory
     Record (bit 2). This file has the same name as the data fork (the file seen
     by non-Apple machines). Associated files are normally ignored by other OSs

     When using -hfs, the TYPE and CREATOR plus other finder info, are stored in
     a separate HFS directory, not visible on the ISO9660 volume. The HFS direc-
     tory references the same data and resource fork files described above.

     In most cases, it is better to use -hfs instead of -apple,  as  the  latter
     imposes  the  limited ISO9660 characters allowed in filenames. However, the
     Apple extensions do give the advantage that the files  are  packed  on  the
     disk more efficiently and it may be possible to fit more files on a CD.

HFS MACINTOSH FILENAMES
     Where  possible, the HFS filename that is stored with an Apple/Unix file is
     used for the HFS part of the CD. However, not all the Apple/Unix  encodings
     store  the HFS filename with the finderinfo. In these cases, the Unix file-
     name is used -- with escaped special characters. Special characters include
     `/' and characters with codes over 127.

     AUFS escapes these characters by using `:' followed by the  character  code
     as  two hex digits. Netatalk and EtherShare have a similar scheme, but uses
     `%' instead of a `:'.

     If genisoimage cannot find an HFS filename, it uses the Unix name, with any
     %xx or :xx characters (xx are two hex digits) converted to a single charac-
     ter code.	If xx are not hex digits ([0-9a-fA-F]), they are left  alone  --
     although any remaining `:' is converted to `%', as `:' is the HFS directory
     separator.  Care  must  be  taken, as an ordinary Unix file with %xx or :xx
     will also be converted. e.g.

     This:2fFile   converted to This/File

     This:File	   converted to This%File

     This:t7File   converted to This%t7File

     Although HFS filenames appear to support uppercase and  lowercase	letters,
     the filesystem is case-insensitive, i.e., the filenames aBc and AbC are the
     same. If a file is found in a directory with the same HFS name, genisoimage
     will  attempt  to make a unique name by adding `_' characters to one of the
     filenames.

     If an HFS filename exists for a file, genisoimage can use this name as  the
     starting  point  for  the	ISO9660,  Joliet  and Rock Ridge filenames using
     -mac-name.  Normal Unix files without an HFS name will still use their Unix
     name.  e.g.

     If a MacBinary (or PC Exchange) file is stored as someimage.gif.bin on  the
     Unix  filesystem, but contains a HFS file called someimage.gif, this is the
     name that would appear on the HFS part of the CD. However,  as  genisoimage
     uses  the	Unix name as the starting point for the other names, the ISO9660
     name generated will probably be  SOMEIMAG.BIN  and  the  Joliet/Rock  Ridge
     would  be	someimage.gif.bin.  This option will use the HFS filename as the
     starting point and the ISO9660 name will probably be SOMEIMAG.GIF	and  the
     Joliet/Rock Ridge would be someimage.gif.

     -mac-name	will not currently work with -T -- the Unix name will be used in
     the TRANS.TBL file, not the Macintosh name.

     The character set used to convert any HFS filename to a  Joliet/Rock  Ridge
     filename  defaults  to  cp10000 (Mac Roman).  The character set used can be
     specified using -input-hfs-charset.  Other built-in HFS character sets are:
     cp10006 (MacGreek), cp10007  (MacCyrillic),  cp10029  (MacLatin2),  cp10079
     (MacIcelandandic) and cp10081 (MacTurkish).

     Note:  the character codes used by HFS filenames taken from the various Ap-
     ple/Unix formats will not be converted as they are assumed  to  be  in  the
     correct  Apple character set. Only the Joliet/Rock Ridge names derived from
     the HFS filenames will be converted.

     The existing genisoimage code will filter out any	illegal  characters  for
     the  ISO9660 and Joliet filenames, but as genisoimage expects to be dealing
     directly with Unix names, it leaves the Rock Ridge names as is.  But as `/'
     is a legal HFS filename character, -mac-name converts `/' to a `_' in  Rock
     Ridge filenames.

     If the Apple extensions are used, only the ISO9660 filenames will appear on
     the  Macintosh.  However,	as the Macintosh ISO9660 drivers can use Level 2
     filenames, you can use options like -allow-multidot without problems  on  a
     Macintosh	--  still  take  care over the names, for example this.file.name
     will be converted to THIS.FILE i.e. only have one `.', also filename abcde-
     fgh will be seen as ABCDEFGH but abcdefghi will be seen as ABCDEFGHI.  i.e.
     with a `.' at the end -- don't know if this is a  Macintosh  problem  or  a
     genisoimage/mkhybrid  problem.  All  filenames  will  be  in uppercase when
     viewed on a Macintosh. Of course, DOS/Win3.X machines will not be	able  to
     see Level 2 filenames...

HFS CUSTOM VOLUME/FOLDER ICONS
     To  give  a HFS CD a custom icon, make sure the root (top level) folder in-
     cludes a standard Macintosh volume icon file. To give  a  volume  a  custom
     icon on a Macintosh, an icon has to be pasted over the volume's icon in the
     "Get  Info" box of the volume. This creates an invisible file called Icon\r
     (`\r' is the carriage return character) in the root folder.

     A custom folder icon is very similar -- an invisible file called Icon\r ex-
     ists in the folder itself.

     Probably the easiest way to create a custom icon that genisoimage	can  use
     is to format a blank HFS floppy disk on a Mac and paste an icon to its "Get
     Info" box. If using Linux with the HFS module installed, mount the floppy:

	    mount -t hfs /dev/fd0 /mnt/floppy

     The  floppy  will	be  mounted  as  a  CAP filesystem by default.	Then run
     genisoimage using something like:

	    genisoimage --cap -o output source_dir /mnt/floppy

     If you are not using Linux, you can use hfsutils to copy the icon file from
     the floppy.  However, care has to be taken, as the  icon  file  contains  a
     control character.  For example:

	    hmount /dev/fd0
	    hdir -a
	    hcopy -m Icon^V^M icon_dir/icon

     Where  `^V^M'  is	control-V followed by control-M. Then run genisoimage by
     using something like:

	    genisoimage --macbin -o output source_dir icon_dir

     The procedure for creating/using custom folder icons  is  very  similar  --
     paste  an icon to folder's "Get Info" box and transfer the resulting Icon\r
     file to the relevant directory in the genisoimage source tree.

     You may want to hide the icon files from the ISO9660 and Joliet trees.

     To give a custom icon to a Joliet CD,  follow  the  instructions  found  at
     http://www.cdrfaq.org/faq03.html#S3-21-1.

HFS BOOT DRIVER
     It may be possible to make the hybrid CD bootable on a Macintosh.

     A	bootable  HFS  CD  requires  an  Apple	CD-ROM (or compatible) driver, a
     bootable HFS partition and the necessary System, Finder, etc. files.

     A driver can be obtained from any other Macintosh bootable CD-ROM using the
     apple_driver utility. This file can then be used with -boot-hfs-file.

     The HFS partition (i.e. the hybrid disk in our case) must contain	a  suit-
     able System Folder, again from another CD-ROM or disk.

     For  a  partition to be bootable, it must have its boot block set. The boot
     block is in the first two blocks of a partition. For a non-bootable  parti-
     tion  the	boot  block  is  full  of zeros. Normally, when a System file is
     copied to partition on a Macintosh disk, the boot block is  filled  with  a
     number of required settings -- unfortunately I don't know the full spec for
     the boot block, so I'm guessing that the following will work.

     Therefore,  the  utility apple_driver also extracts the boot block from the
     first HFS partition it finds on the given CD-ROM and this is used	for  the
     HFS partition created by genisoimage.

     Please  note: By using a driver from an Apple CD and copying Apple software
     to your CD, you become liable to obey Apple Computer, Inc. Software License
     Agreements.

EL TORITO BOOT INFORMATION TABLE
     When -boot-info-table is given, genisoimage will modify the boot file spec-
     ified by -b by inserting a 56-byte boot information table at  offset  8  in
     the file.	This modification is done in the source filesystem, so make sure
     you  use  a  copy if this file is not easily recreated!  This file contains
     pointers which may not be easily or reliably obtained at boot time.

     The format of this table is as follows; all integers are in  section  7.3.1
     ("little endian") format.

       Offset	 Name		Size	  Meaning
	8	  bi_pvd	 4 bytes   LBA of primary volume descriptor
       12	 bi_file	4 bytes   LBA of boot file
       16	 bi_length	4 bytes   Boot file length in bytes
       20	 bi_csum	4 bytes   32-bit checksum
       24	 bi_reserved	40 bytes  Reserved

	    The  32-bit  checksum is the sum of all the 32-bit words in the boot
	    file starting at byte offset 64.  All linear block addresses  (LBAs)
	    are given in CD sectors (normally 2048 bytes).

HPPA NOTES
     To  make  a  bootable  CD	for  HPPA,  at the very least a boot loader file
     (-hppa-bootloader), a kernel image file (32-bit, 64-bit, or both, depending
     on hardware) and a boot command line  (-hppa-cmdline)  must  be  specified.
     Some  systems  can  boot  either a 32- or a 64-bit kernel, and the firmware
     will choose one if both are present.  Optionally, a ramdisk can be used for
     the root filesystem using -hppa-cmdline.

JIGDO NOTES
     Jigdo is a tool to help in the distribution of large files like CD and  DVD
     images; see http://atterer.org/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.

     To create jigdo and template files alongside the ISO image  from  genisoim-
     age,  you must first generate a list of the files that will be used, in the
     following format:

       MD5sum	File size  Path
       32 chars 12 chars   to end of line

     The MD5sum must be written in standard hexadecimal notation, the file  size
     must  list  the  size  of the file in bytes, and the path must list the ab-
     solute path to the file. For example:

     00006dcd58ff0756c36d2efae21be376	      14736  /mirror/debian/file1
     000635c69b254a1be8badcec3a8d05c1	     211822  /mirror/debian/file2
     00083436a3899a09633fc1026ef1e66e	      22762  /mirror/debian/file3

     Once you have this file, call genisoimage with all of your normal	command-
     line  parameters.	Specify  the output filenames for the jigdo and template
     files using -jigdo-jigdo and -jigdo-template, and pass in the  location  of
     your MD5 list with -md5-list.

     If  there	are  files  that you do NOT want to be added into the jigdo file
     (e.g. if they are likely to change often), specify  them  using  -jigdo-ex-
     clude. If you want to verify some of the files as they are written into the
     image,  specify  them  using  -jigdo-force-md5.  If  any files don't match,
     genisoimage will then abort.  Both of these options  take	regular  expres-
     sions  as	input.	It is possible to restrict the set of files that will be
     used further based on size -- use the -jigdo-min-file-size option.

     Finally, the jigdo code needs to know how to map the files it is given onto
     a mirror-style configuration. Specify how to map  paths  using  -jigdo-map.
     Using  Debian=/mirror/debian will cause all paths starting with /mirror/de-
     bian to be mapped to Debian:<file> in the output jigdo file.

EXAMPLES
     To create a vanilla ISO9660 filesystem image in the file cd.iso, where  the
     directory cd_dir will become the root directory of the CD, call:

	    % genisoimage -o cd.iso cd_dir

     To create a CD with Rock Ridge extensions of the source directory cd_dir:

	    % genisoimage -o cd.iso -R cd_dir

     To  create  a  CD with Rock Ridge extensions of the source directory cd_dir
     where all files have at least read permission and all files  are  owned  by
     root, call:

	    % genisoimage -o cd.iso -r cd_dir

     To  write	a  tar archive directly to a CD that will later contain a simple
     ISO9660 filesystem with the tar archive call:

	    % tar cf - . | genisoimage -stream-media-size 333000 | \
		 wodim dev=b,t,l -dao tsize=333000s -

     To create a HFS hybrid CD with the Joliet and Rock Ridge extensions of  the
     source directory cd_dir:

	    % genisoimage -o cd.iso -R -J -hfs cd_dir

     To  create  a  HFS hybrid CD from the source directory cd_dir that contains
     Netatalk Apple/Unix files:

	    % genisoimage -o cd.iso --netatalk cd_dir

     To create a HFS hybrid CD from the  source  directory  cd_dir,  giving  all
     files  CREATOR  and TYPES based on just their filename extensions listed in
     the file "mapping".:

	    % genisoimage -o cd.iso -map mapping cd_dir

     To create a CD with the Apple Extensions to ISO9660, from the source direc-
     tories cd_dir and another_dir.  Files in all the  known  Apple/Unix  format
     are  decoded  and any other files are given CREATOR and TYPE based on their
     magic number given in the file magic:

	    % genisoimage -o cd.iso -apple -magic magic -probe \
		    cd_dir another_dir

     The following example puts different files on the CD that all have the name
     README, but have different contents when  seen  as  a  ISO9660/Rock  Ridge,
     Joliet or HFS CD.

     Current directory contains:

	    % ls -F
	    README.hfs	   README.joliet  README.Unix	 cd_dir/

     The  following  command puts the contents of the directory cd_dir on the CD
     along with the three README files -- but only one will be seen from each of
     the three filesystems:

	    % genisoimage -o cd.iso -hfs -J -r -graft-points \
		    -hide README.hfs -hide README.joliet \
		    -hide-joliet README.hfs -hide-joliet README.Unix \
		    -hide-hfs README.joliet -hide-hfs README.Unix \
		    README=README.hfs README=README.joliet \
		    README=README.Unix cd_dir

     i.e. the file README.hfs will be seen as README on the HFS CD and the other
     two README files will be hidden. Similarly for the Joliet and  ISO9660/Rock
     Ridge CD.

     There  are probably all sorts of strange results possible with combinations
     of the hide options ...

NOTES
     genisoimage may safely be installed suid root. This may be needed to  allow
     genisoimage  to  read the previous session when creating a multisession im-
     age.

     If genisoimage is creating a filesystem image with  Rock  Ridge  attributes
     and  the  directory  nesting level of the source directory tree is too much
     for ISO9660, genisoimage will do deep directory relocation.   This  results
     in  a directory called RR_MOVED in the root directory of the CD. You cannot
     avoid this directory.

     Many boot code options for different platforms are  mutualy  exclusive  be-
     cause  the  boot  blocks  cannot coexist, ie. different platforms share the
     same data	locations  in  the  image.  See  http://lists.debian.org/debian-
     cd/2006/12/msg00109.html for details.

BUGS
     Any files that have hard links to files not in the tree being copied to the
     ISO9660 filesystem will have an incorrect file reference count.

     Does  not	check  for  SUSP record(s) in `.' entry of the root directory to
     verify the existence of Rock Ridge enhancements.  This problem  is  present
     when reading old sessions while adding data in multisession mode.

     Does  not	properly  read	relocated  directories in multisession mode when
     adding data.  Any relocated deep directory is lost if the new session  does
     not include the deep directory.

     Does not re-use RR_MOVED when doing multisession from TRANS.TBL.

     Does not create whole_name entry for RR_MOVED in multisession mode.

     There may be other bugs.  Please, report them to the maintainers.

HFS PROBLEMS/LIMITATIONS
     I	have had to make several assumptions on how I expect the modified libhfs
     routines to work, however there may be situations	that  either  I  haven't
     thought  of, or come across when these assumptions fail.  Therefore I can't
     guarantee that genisoimage will work as expected (although I haven't had  a
     major  problem  yet).  Most of the HFS features work fine, but some are not
     fully tested. These are marked as Alpha above.

     Although HFS filenames appear to support uppercase and  lowercase	letters,
     the filesystem is case-insensitive, i.e., the filenames aBc and AbC are the
     same. If a file is found in a directory with the same HFS name, genisoimage
     will  attempt  to make a unique name by adding `_' characters to one of the
     filenames.

     HFS file/directory names that share the first 31 characters  have	`_N'  (a
     decimal  number) substituted for the last few characters to generate unique
     names.

     Care must be taken when "grafting" Apple/Unix  files  or  directories  (see
     above  for the method and syntax involved). It is not possible to use a new
     name for an Apple/Unix encoded file/directory. e.g. If a Apple/Unix encoded
     file called oldname is to added to the CD, you cannot use the command line:

	    genisoimage -o output.raw -hfs -graft-points newname=oldname cd_dir

     genisoimage will be unable to decode oldname.  However, you can  graft  Ap-
     ple/Unix encoded files or directories as long as you do not attempt to give
     them new names as above.

     When  creating an HFS volume with the multisession options, -M and -C, only
     files in the last session will be in the HFS volume. i.e.	genisoimage can-
     not add existing files from previous sessions to the HFS volume.

     However, if each session is created with -part, each session will appear as
     separate volumes when mounted on a Mac. In this case, it is worth using  -V
     or  -hfs-volid  to  give  each session a unique volume name, otherwise each
     "volume" will appear on the Desktop with the same name.

     Symbolic links (as with all other non-regular files) are not added  to  the
     HFS directory.

     Hybrid  volumes may be larger than pure ISO9660 volumes containing the same
     data. In some cases (e.g. DVD sized volumes) the difference can be signifi-
     cant. As an HFS volume gets bigger, so does the allocation block size  (the
     smallest  amount  of space a file can occupy).  For a 650MB CD, the alloca-
     tion block is 10kB, for a 4.7GB DVD it will be about 70kB.

     The maximum number of files in an HFS volume is about 65500 -- although the
     real limit will be somewhat less than this.

     The resulting hybrid volume can be accessed on a Unix machine by using  the
     hfsutils  routines.  However, no changes can be made to the volume as it is
     set as locked.  The option -hfs-unlock will create an output image that  is
     unlocked -- however no changes should be made to the contents of the volume
     (unless  you  really know what you are doing) as it's not a "real" HFS vol-
     ume.

     -mac-name will not currently work with -T -- the Unix name will be used  in
     the TRANS.TBL file, not the Macintosh name.

     Although  genisoimage  does  not  alter the contents of a file, if a binary
     file has its TYPE set as TEXT, it may be read incorrectly on  a  Macintosh.
     Therefore a better choice for the default TYPE may be ????.

     -mac-boot-file may not work at all...

     May  not  work  with PC Exchange v2.2 or higher files (available with MacOS
     8.1).  DOS media containing PC Exchange files should be mounted as type ms-
     dos (not vfat) when using Linux.

     The SFM format is only partially supported -- see HFS MACINTOSH  FILE  FOR-
     MATS section above.

     It  is not possible to use -sparc-boot or -generic-boot with -boot-hfs-file
     or -prep-boot.

     genisoimage should be able to create HFS hybrid images over  4Gb,	although
     this has not been fully tested.

SEE ALSO
     genisoimagerc(5), wodim(1), mkzftree(8), magic(5).

AUTHORS
     genisoimage  is  derived  from mkisofs from the cdrtools 2.01.01a08 package
     from May 2006 (with few updates extracted	from  cdrtools	2.01.01a24  from
     March  2007)  from .IR http://cdrecord.berlios.de/ , but is now part of the
     cdrkit suite, maintained by Joerg Jaspert, Eduard	Bloch,	Steve  McIntyre,
     Peter  Samuelson,	Christian Fromme, Ben Hutchings, and other contributors.
     The maintainers can be contacted at  debburn-devel@lists.alioth.debian.org,
     or see the cdrkit project web site at http://www.cdrkit.org/.

     Eric  Youngdale  wrote  the  first  versions  (1993-1998) of mkisofs.  Jorg
     Schilling wrote the SCSI transport library and its interface, and has main-
     tained mkisofs since 1999.  James Pearson wrote the HFS hybrid code,  using
     libhfs  by  Robert  Leslie.   Pearson,  Schilling, Jungshik Shin and Jaakko
     Heinonen contributed to the character  set  conversion  code.   The  cdrkit
     maintainers have maintained genisoimage since 2006.

     Copyright 1993-1998 by Yggdrasil Computing, Inc.
     Copyright 1996-1997 by Robert Leslie
     Copyright 1997-2001 by James Pearson
     Copyright 1999-2006 by Jorg Schilling
     Copyright 2007 by Jorg Schilling (originating few updates)
     Copyright 2002-2003 by Jungshik Shin
     Copyright 2003 by Jaakko Heinonen
     Copyright 2006 by the Cdrkit maintainers

     If  you  want  to take part in the development of genisoimage, you may join
     the  cdrkit  developer  mailing  list  by	following  the	instructions  on
     http://alioth.debian.org/mail/?group_id=31006.   The  email  address of the
     list is debburn-devel@lists.alioth.debian.org.  This is  also  the  address
     for  user support questions.  Note that cdrkit and cdrtools are not affili-
     ated.

ACKNOWLEDGEMENTS
     UNIX is a registered trademark of The Open Group in the US and other  coun-
     tries.

				   13 Dec 2006			  GENISOIMAGE(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=genisoimage&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help