Man Linux: Main Page and Category List

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  `e'  (small e with acute accent) may be character
       code 0x82 on a PC, code 0x8e on a Macintosh, code 0xe9 on a Unix system
       in western Europe, and code 0x000e9 in Unicode.

       As  long  as  not  all  operating systems and applications use the same
       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/faq.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.net/jigdo/ for more details.  Debian CDs
       and DVD ISO images are published on the web in jigdo  format  to  allow
       end users to download them more efficiently.

       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  should  be written in jigdo's pseudo-base64 format.
              The file size should be in decimal, and the  path  to  the  file
              must be absolute.

       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-ignore. 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/msg001.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.   Jorg
       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 Jorg Schilling
       Copyright 2007 by Jorg Schilling (originating few updates)
       Copyright 2002-2003 by Jungshik Shin
       Copyright 2003 by Jaakko Heinonen
       Copyright 2006 by the Cdrkit maintainers

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

ACKNOWLEDGEMENTS

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

                                  13 Dec 2006