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
   hybrid 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  permissions,  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
   binary 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 priority 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
   directly.   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 available 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
   configuration 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
          represented 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 compatibility.
          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
          filenames.
          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
          filenames.  A leading dot is not affected by this option, it may
          be allowed 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
          characters.  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
          multiple 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 kernel filename and the boot loader filename.  See
          the HPPA NOTES section 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 information.

   -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 relative 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 label specifies slice 0 for
          the ISO9660 image and slices 1 to 7 for  the  boot  images  that
          have  been  specified with this option. Byte offsets 512 to 8191
          within each of the additional boot images must contain a primary
          boot that works for the appropriate SPARC architecture. The rest
          of each of the images usually contains a UFS filesystem 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 section 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
          either  -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 image 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-
          emulation 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  correct  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
          required  for  an  El  Torito  bootable CD. The pathname must be
          relative to the source path specified to genisoimage.  This file
          will  be  inserted  into  the output tree and not created in the
          source filesystem, so be sure the specified  filename  does  not
          conflict  with an existing file, or it will be excluded. Usually
          a name like boot.catalog 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
          combines -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 option automatically enables Rock Ridge extensions.

   -dvd-video
          Generate  a  DVD-Video compliant UDF filesystem. This is done by
          sorting 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  requires  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
          option  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
          extensions.

   -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 `=' characters 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 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.   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 order to match a  directory  name,  make  sure  the
          pathname does not include 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
          attribute.  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 -input-charset help.  To get a 1:1 mapping, you  may
          use  default  as  charset  name.  The default initial values are
          cp437 on DOS-based systems 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  limited  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 nesting is not limited to 8 levels, there is  no  need
          for  a file to contain 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
          descriptor.  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,  consider  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
          image.  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
          externally-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=/mirror/debian).   See  the JIGDO NOTES section below for
          more information.

   -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 example:

               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 option 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
          version 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,
          filenames 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
          previous  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 Solaris 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,  stdout  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)
          implement  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,  particularly  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  characters.   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  characters.   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 advance.  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
          further 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,  because  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 desirable 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
          except 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
          essentially 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
          genisoimage 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  incremental 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
          modified. Recovering the files by copying  the  whole  directory
          back  from  CD  would  also  restore  files  that  were  deleted
          intentionally.  Accessing  several  older  versions  of  a  file
          requires  support  by  the  operating  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 beginning 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 include 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  order  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, filename_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
          specified,  genisoimage reads from stdin and creates a file with
          the name  STREAM.IMG.   The  maximum  size  of  the  file  (with
          padding)  is  200 sectors less than the specified media size. If
          -no-pad has been specified, 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
          filesystem 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
          partition 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 partition 0.   There  may  be  empty  fields  in  the  comma-
          separated  list,  and list entries for partition 1 and 2 must be
          empty.   The  maximum  number  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
          resulting  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.
          Equivalent 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 correct filenames.  There is also information present in the
          file  that  indicates  the major and minor numbers for block and
          character devices, 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 pitfalls with the current  implementation.  There
          is  no  UID/GID  support,  there is no POSIX permission support,
          there is no support for symlinks.   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 versions are strings in the range ;1 to ;32767 This
          option is the default 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-multidot  -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 extensions. 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 contains 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   option   -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 decompress the
          files.

HFS OPTIONS

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

   -apple Create an ISO9660 CD with Apple's extensions. Similar  to  -hfs,
          except that the Apple Extensions to ISO9660 are added instead of
          creating an HFS hybrid volume.  Former genisoimage versions  did
          include   Rock   Ridge  attributes  by  default  if  -apple  was
          specified.  This  versions  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 CREATOR/TYPE section below.

   -magic magic_file
          The  CREATOR and TYPE information is set by using a file's magic
          number (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
          formats.  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 volume.

   -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
          Macintosh. 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  partition  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
          Exchange  files. Implies --exchange.  See the HFS MACINTOSH FILE
          FORMATS 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
          directory.  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 command 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  include  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/LIMITATIONS 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
          directory  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" (remember to use quotes if the name contains spaces).

   -hfs-parms parameters
          Override certain parameters used to create the  HFS  filesystem.
          Unlikely   to   be   used  in  normal  circumstances.   See  the
          libhfs_iso/hybrid.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 formats 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
   characters 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 character set) is maps 1:1 to a UTF-32,  UTF-16  or  UTF-8
   coded Unicode character.  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  character 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 character 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  `'  (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
   character 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 character 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 -input-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 information. 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 support.

   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 character 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 Macintosh 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 something 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 offset 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
   extension (with -map), or their magic number  (with  -magic).   If  the
   default  match  is  used in the mapping file, these values override the
   default CREATOR and TYPE.

   A    full     CREATOR/TYPE     database     can     be     found     at
   http://www.angelfire.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 CREATOR.  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 usually 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
   referred  to  as  the Finder info).  Unfortunately, it seems that every
   software package that stores Macintosh  files  on  Unix  has  chosen  a
   completely different 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 .finderinfo 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
          filename.   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 contents 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
          finderinfo,  it is assumed not to have any Apple/Unix encoding ---
          therefore 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 filename 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  extensions  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 directory 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 filename 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
   character  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
   Apple/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  abcdefgh 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
   includes 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
   exists 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
   suitable 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  partition  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
   specified 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
   genisoimage, 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 absolute 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-exclude. 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  expressions 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/debian 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
   directories  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 image.

   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
   because  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
   Apple/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 cannot 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
   significant. 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 allocation 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 volume.

   -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 msdos (not vfat) when using Linux.

   The SFM format is only partially supported ---  see  HFS  MACINTOSH  FILE
   FORMATS 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.   Jrg
   Schilling  wrote  the SCSI transport library and its interface, and has
   maintained 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 Jrg Schilling
   Copyright 2007 by Jrg 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 affiliated.

ACKNOWLEDGEMENTS

   UNIX is a registered trademark of The Open Group in the  US  and  other
   countries.

                              13 Dec 2006                   GENISOIMAGE(1)





Opportunity


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.





Free Software


Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.


Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.





Free Books


The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.


Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.





Education


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.


Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.