


MKISOFS(8)           Maintenance Procedures            MKISOFS(8)



NNNNAAAAMMMMEEEE
     mkisofs - create a iso9660  filesystem  with  optional  Rock
     Ridge attributes.

SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
     mmmmkkkkiiiissssooooffffssss [ ----aaaa ] [ ----aaaabbbbssssttttrrrraaaacccctttt _F_I_L_E ] [ ----bbbbiiiibbbblllliiiioooo _F_I_L_E  ]  [   ---- bbbb
     _e_l_t_o_r_i_t_o__b_o_o_t__i_m_a_g_e  ]  [   ---- BBBB _s_p_a_r_c__b_o_o_t__i_m_a_g_e__l_i_s_t ] [ ----GGGG
     _g_e_n_e_r_i_c__b_o_o_t__i_m_a_g_e ] [ ----gggguuuuiiii ] [ ----CCCC #,# ] [ ----hhhhaaaarrrrdddd----ddddiiiisssskkkk----bbbbooooooootttt ]
     [   ----nnnnoooo----eeeemmmmuuuullll----bbbbooooooootttt ] [ ----nnnnoooo----bbbbooooooootttt ] [ ----bbbbooooooootttt----llllooooaaaadddd----sssseeeegggg ] [ ----bbbbooooooootttt----
     llllooooaaaadddd----ssssiiiizzzzeeee ] [ ----bbbbooooooootttt----iiiinnnnffffoooo----ttttaaaabbbblllleeee ] [ ----cccc _b_o_o_t__c_a_t_a_l_o_g  ]  [   ----
     ccccooooppppyyyyrrrriiiigggghhhhtttt  _F_I_L_E ] [ ----AAAA _a_p_p_l_i_c_a_t_i_o_n__i_d ] [ ----ffff ] [ ----dddd ] [ ----DDDD ]
     [ ----hhhhiiiiddddeeee _g_l_o_b ] [ ----hhhhiiiiddddeeee----lllliiiisssstttt _f_i_l_e ] [ ----hhhhiiiiddddeeee----jjjjoooolllliiiieeeetttt _g_l_o_b ] [ ----
     hhhhiiiiddddeeee----jjjjoooolllliiiieeeetttt----lllliiiisssstttt  _f_i_l_e ] [ ----hhhhiiiiddddeeee----jjjjoooolllliiiieeeetttt----ttttrrrraaaannnnssss----ttttbbbbllll ] [ ----hhhhiiiiddddeeee----
     rrrrrrrr----mmmmoooovvvveeeedddd ] [ ----JJJJ ] [ ----llll ] [ ----LLLL ] [ ----lllloooogggg----ffffiiiilllleeee _l_o_g__f_i_l_e ] [ ---- MMMM
     _p_a_t_h  | _d_e_v_i_c_e ] [ ----nnnnoooobbbbaaaakkkk ] [ ----nnnnoooo----bbbbaaaakkkk ] [ ----nnnnoooo----sssspppplllliiiitttt----ssssyyyymmmmlllliiiinnnnkkkk----
     ccccoooommmmppppoooonnnneeeennnnttttssss ] [ ----nnnnoooo----sssspppplllliiiitttt----ssssyyyymmmmlllliiiinnnnkkkk----ffffiiiieeeellllddddssss ] [ ----ppppaaaatttthhhh----lllliiiisssstttt  _f_i_l_e
     ]  [ ----pppp _p_r_e_p_a_r_e_r ] [ ----pppprrrriiiinnnntttt----ssssiiiizzzzeeee ] [ ----PPPP _p_u_b_l_i_s_h_e_r ] [ ----qqqquuuuiiiieeeetttt
     ] [ ----rrrr ] [ ----RRRR ] [ ----ssssyyyyssssiiiidddd _I_D ] [ ----TTTT ] [ ----UUUU ] [ ----vvvv  ]  [   ---- VVVV
     _v_o_l_i_d  ] [ ----vvvvoooollllsssseeeetttt _I_D ] [ ----vvvvoooollllsssseeeetttt----ssssiiiizzzzeeee # ] [ ----vvvvoooollllsssseeeetttt----sssseeeeqqqqnnnnoooo #
     ] [ ----xxxx _p_a_t_h ] [ ----eeeexxxxcccclllluuuuddddeeee----lllliiiisssstttt _f_i_l_e ] [ ----zzzz ] [ ----mmmm _g_l_o_b ]  ---- oooo
     _f_i_l_e_n_a_m_e _p_a_t_h_s_p_e_c [_p_a_t_h_s_p_e_c]

DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
     mmmmkkkkiiiissssooooffffssss is effectively a pre-mastering program  to  generate
     the  iso9660  filesystem  -  it  takes a snapshot of a given
     directory tree, and generates  a  binary  image  which  will
     correspond  to an iso9660 filesystem when written to a block
     device.

     mmmmkkkkiiiissssooooffffssss is also capable of generating the System Use Sharing
     Protocol  records  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 longer filenames, uid/gid,  posix  permissions,  and
     block and character devices.

     Each file written to the  iso9660  filesystem  must  have  a
     filename  in the 8.3 format (8 characters, period, 3 charac-
     ters, all upper case), 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.  mmmmkkkkiiiissssooooffffssss generally tries to
     form  correct  names  by  forcing the unix filename to upper
     case and truncating as required, but often times this yields
     unsatisfactory  results when there are cases where the trun-
     cated names are not all unique.  mmmmkkkkiiiissssooooffffssss 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  have  a 3 digit number as an extension (where the number
     is guaranteed to be unique).  An example of  this  would  be
     the  files  foo.bar  and  foo.bar.~1~ - the file foo.bar.~1~



Version 1.12b5      Last change: 7. Jan 2000                    1






MKISOFS(8)           Maintenance Procedures            MKISOFS(8)



     would be written as FOO.000;1 and the file foo.bar would  be
     written as FOO.BAR;1

     Note that mmmmkkkkiiiissssooooffffssss 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 disk.  The ccccddddwwwwrrrriiiitttteeee
     utility is one such tool that runs under Linux and  performs
     this task.  The latest version of ccccddddwwwwrrrriiiitttteeee is capable of com-
     municating with the Phillips/IMS/Kodak, HP and Yamaha drives
     that  have been manufactured before 1997.  Most writers come
     with some version of DOS software that allows a direct image
     copy of an iso9660 image to the writer.  The current version
     of ccccddddwwwwrrrriiiitttteeee is available from  sunsite.unc.edu:  /utils/disk-
     management/cdwrite-2.0.tar.gz Note that cdwrite has not been
     actively maintained since 1995.

     The ccccddddrrrreeeeccccoooorrrrdddd utility is another utility capable  of  burning
     an actual disc.  The latest version of ccccddddrrrreeeeccccoooorrrrdddd is available
     from  ftp://ftp.fokus.gmd.de/pub/unix/cdrecord  Cdrecord  is
     under constant development.

     Also you should know that most cd writers are very  particu-
     lar about timing.  Once you start to burn a disc, you cannot
     let their buffer empty before you are done, or you will  end
     up  with  a  corrupt  disc.  Thus it is critical that you be
     able to maintain an uninterrupted data stream to the  writer
     for the entire time that the disc is being written.

     ppppaaaatttthhhhssssppppeeeecccc is the path of the directory tree to be copied into
     the  iso9660  filesystem.   Multiple paths can be specified,
     and mmmmkkkkiiiissssooooffffssss will merge the files found in all of the  speci-
     fied path components to form the cdrom image.

     It is possible to graft the paths at points other  than  the
     root  directory, and it is possible to graft files or direc-
     tories 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  the  file  old.lis  in  the  cdrom  image  at
     /foo/bar/old.lis, while

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

     will  include  the  file  old.lis  in  the  cdrom  image  at
     /foo/bar/xxx.   The  same  sort  of  syntax can be used with



Version 1.12b5      Last change: 7. Jan 2000                    2






MKISOFS(8)           Maintenance Procedures            MKISOFS(8)



     directories as well.  mmmmkkkkiiiissssooooffffssss wwwwiiiillllllll  ccccrrrreeeeaaaatttteeee  aaaannnnyyyy  ddddiiiirrrreeeeccccttttoooorrrriiiieeeessss
     rrrreeeeqqqquuuuiiiirrrreeeedddd ssssuuuucccchhhh tttthhhhaaaatttt tttthhhheeee ggggrrrraaaafffftttt points exist on the cdrom image
     - the directories do not need to appear in one of the paths.
     Any  directories  that are created on the fly like this will
     have permissions 0555 and appear to be owned by  the  person
     running mkisofs.  If you wish other permissions or owners of
     the intermediate directories, the  easiest  solution  is  to
     create  real  directories  in  the  path  such  that mkisofs
     doesn't have to invent them.


OOOOPPPPTTTTIIIIOOOONNNNSSSS
     ----aaaa    Include all files on the iso9660 filesystem.  Normally
          files  that  contain the characters '~' or '#' will not
          be included (these are typically backup files for  edi-
          tors  under  unix).  This  option  is now obsolete (see
          -no-bak option).

     ----aaaabbbbssssttttrrrraaaacccctttt _F_I_L_E
          Specifies the abstract file name.  This  parameter  can
          also  be set in the file ....mmmmkkkkiiiissssooooffffssssrrrrcccc with ABST=filename.
          If specified in both places, the command  line  version
          is used.

     ----AAAA _a_p_p_l_i_c_a_t_i_o_n__i_d
          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 on  the  disc
          for  128 characters of information.  This parameter can
          also be set in the file ....mmmmkkkkiiiissssooooffffssssrrrrcccc  with  APPI=id.   If
          specified  in  both places, the command line version is
          used.

     ----bbbbiiiibbbblllliiiioooo _F_I_L_E
          Specifies the bibliographic file name.  This  parameter
          can   also   be   set   in  the  file  ....mmmmkkkkiiiissssooooffffssssrrrrcccc  with
          BIBLO=filename.  If specified in both places, the  com-
          mand line version is used.

     ----bbbb _e_l_t_o_r_i_t_o__b_o_o_t__i_m_a_g_e
          Specifies the path and filename of the boot image to be
          used  when making an "El Torito" bootable CD. The path-
          name must be relative to the source path  specified  to
          mmmmkkkkiiiissssooooffffssss.... This option is required to make an "El Torito"
          bootable CD.  The boot image must be exactly  the  size
          of  either  a  1.2,  1.44,  or  a  2.88 meg floppy, and
          mmmmkkkkiiiissssooooffffssss will use this size  when  creating  the  output
          iso9660  filesystem.  It  is assumed that the first 512
          byte sector should be read from the boot image  (it  is
          essentially  emulating  a  normal  floppy drive).  This
          will work, for example, if the boot  image  is  a  LILO
          based boot floppy.



Version 1.12b5      Last change: 7. Jan 2000                    3






MKISOFS(8)           Maintenance Procedures            MKISOFS(8)



     ----BBBB _i_m_g__s_u_n_4,_i_m_g__s_u_n_4_c,_i_m_g__s_u_n_4_m,_i_m_g__s_u_n_4_d,_i_m_g__s_u_n_4_e
          Specifies a comma separated list of  boot  images  that
          are  needed  to  make  a bootable CD for sparc systems.
          There may be empty fields in the comma separated  list.
          This  option  is required to make a bootable CD for Sun
          sparc systems.  If the ----BBBB or  ---- ssssppppaaaarrrrcccc----bbbbooooooootttt  option  has
          been specified, the first sector of the resulting image
          will contain a Sun disk label. This disk  label  speci-
          fies  slice  0  for  the  iso9660 image and slice 1 ...
          slice 7 for the boot images that  have  been  specified
          with  this option. Byte offset 512 ... 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 an  ufs
          filesystem that is used primary kernel boot stage.

          The implemented boot method is the  boot  method  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.  For this reason, it should be usable
          for any OS that boots off a sparc system.

     ----GGGG _g_e_n_e_r_i_c__b_o_o_t__i_m_a_g_e
          Specifies the path and filename  of  the  generic  boot
          image  to  be  used  when making a generic bootable CD.
          The ggggeeeennnneeeerrrriiiicccc____bbbbooooooootttt____iiiimmmmaaaaggggeeee wil be placed on  the  first  16
          sectors of the CD. The first 16 sectors are the sectors
          that are located  before  the  iso9660  primary  volume
          descriptor.  If this option is used together with the ----
          ssssppppaaaarrrrcccc----bbbbooooooootttt option, the Sun disk label will overlay  the
          first 512 bytes of the generic boot image.

     ----hhhhaaaarrrrdddd----ddddiiiisssskkkk----bbbbooooooootttt
          Specifies that the boot image used to create  "El  Tor-
          ito"  bootable  CDs is a hard disk image. The hard disk
          image must begin with a master boot  record  that  con-
          tains a single partition.

     ----nnnnoooo----eeeemmmmuuuullll----bbbbooooooootttt
          Specifies that the boot image used to create  "El  Tor-
          ito" bootable CDs is a 'no emulation' image. The system
          will load and execute this image without performing any
          disk emulation.

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

     ----bbbbooooooootttt----llllooooaaaadddd----sssseeeegggg _s_e_g_m_e_n_t__a_d_d_r_e_s_s
          Specifies the load segment address of  the  boot  image



Version 1.12b5      Last change: 7. Jan 2000                    4






MKISOFS(8)           Maintenance Procedures            MKISOFS(8)



          for no-emulation "El Torito" CDs.

     ----bbbbooooooootttt----llllooooaaaadddd----ssssiiiizzzzeeee _l_o_a_d__s_e_c_t_o_r_s
          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.

     ----bbbbooooooootttt----iiiinnnnffffoooo----ttttaaaabbbblllleeee
          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 sure to make
          a copy if this file cannot be easily regenerated!   See
          the   BBBBOOOOOOOOTTTT IIIINNNNFFFFOOOO TTTTAAAABBBBLLLLEEEE section for a description of this
          table.

     ----CCCC _l_a_s_t__s_e_s_s__s_t_a_r_t,_n_e_x_t__s_e_s_s__s_t_a_r_t
          This option is needed when mmmmkkkkiiiissssooooffffssss is  used  to  create
          the image of a second session or a higher level session
          for a multi session disk.  The option ----CCCC takes  a  pair
          of  two  numbers separated by a comma. The first number
          is the sector number of the first sector  in  the  last
          session  of  the  disk that should be appended to.  The
          second number is the starting sector number of the  new
          session.  The expected pair of numbers may be retrieved
          by calling ccccddddrrrreeeeccccoooorrrrdddd ----mmmmssssiiiinnnnffffoooo ............ the ----CCCC option may  only
          be uses in conjunction with the ----MMMM option.

     ----cccc _b_o_o_t__c_a_t_a_l_o_g
          Specifies the path and filename of the boot catalog  to
          be  used  when  making  an "El Torito" bootable CD. The
          pathname must be relative to the source path  specified
          to  mmmmkkkkiiiissssooooffffssss.... This option is required to make a bootable
          CD.  This file will be created by mmmmkkkkiiiissssooooffffssss in the source
          filesystem,  so be sure the specified filename does not
          conflict with an existing file, as it will  be  quietly
          overwritten!  Usually  a  name  like  "boot.catalog" is
          chosen.

     ----ccccooooppppyyyyrrrriiiigggghhhhtttt _F_I_L_E
          Specifies the Copyright file name.  This parameter  can
          also  be set in the file ....mmmmkkkkiiiissssooooffffssssrrrrcccc with COPY=filename.
          If specified in both places, the command  line  version
          is used.

     ----dddd    Omit trailing period from files that  do  not  have  a
          period.   This  violates  the  ISO9660 standard, but it
          happens to work on many systems.  Use with caution.

     ----DDDD    Do not use deep directory relocation, and instead just
          pack  them  in  the way we see them.  This violates the



Version 1.12b5      Last change: 7. Jan 2000                    5






MKISOFS(8)           Maintenance Procedures            MKISOFS(8)



          ISO9660 standard, but it works on  many  systems.   Use
          with caution.

     ----ffff    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 the file
          will be ignored.

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

     ----hhhhiiiiddddeeee _g_l_o_b
          Hide _g_l_o_b from being seen on the ISO9660 or Rock  Ridge
          directory.   _g_l_o_b  is  a  shell wild-card-style pattern
          that must match any part of the filename or path.  Mul-
          tiple  globs  may  be  hidden  (up  to  1000).  If _g_l_o_b
          matches a directory, then the contents of  that  direc-
          tory  will  be hidden.  All the hidden files will still
          be written to the output CD image file.  Should be used
          with the ----hhhhiiiiddddeeee----jjjjoooolllliiiieeeetttt option.

     ----hhhhiiiiddddeeee----lllliiiisssstttt _f_i_l_e
          A file containing a list  of  _g_l_o_b_s  to  be  hidden  as
          above.

     ----hhhhiiiiddddeeee----jjjjoooolllliiiieeeetttt _g_l_o_b
          Hide _g_l_o_b from being  seen  on  the  Joliet  directory.
          _g_l_o_b is a shell wild-card-style pattern that must match
          any part of the filename or path.  Multiple  globs  may
          be  hidden  (up to 1000).  If _g_l_o_b matches a directory,
          then the contents of that  directory  will  be  hidden.
          All  the hidden files will still be written to the out-
          put CD image file.  Should be  used  with  the   ---- hhhhiiiiddddeeee
          option.

     ----hhhhiiiiddddeeee----jjjjoooolllliiiieeeetttt----lllliiiisssstttt _f_i_l_e
          A file containing a list  of  _g_l_o_b_s  to  be  hidden  as
          above.

     ----hhhhiiiiddddeeee----jjjjoooolllliiiieeeetttt----ttttrrrraaaannnnssss----ttttbbbbllll
          Hide the TTTTRRRRAAAANNNNSSSS....TTTTBBBBLLLL 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.

     ----hhhhiiiiddddeeee----rrrrrrrr----mmmmoooovvvveeeedddd
          Rename the directory RRRRRRRR____MMMMOOOOVVVVEEEEDDDD to ....rrrrrrrr____mmmmoooovvvveeeedddd in the  Rock
          Ridge  tree.   It  seems to be impossible to completely
          hide the RRRRRRRR____MMMMOOOOVVVVEEEEDDDD directory from the Rock  Ridge  tree.
          This  option  only  makes  the  visible  tree better to
          understand  for  people  who  don't  know   what   this



Version 1.12b5      Last change: 7. Jan 2000                    6






MKISOFS(8)           Maintenance Procedures            MKISOFS(8)



          directory  is  for.   If  you  need to have no RRRRRRRR____MMMMOOOOVVVVEEEEDDDD
          directory at all, you should use the ---- DDDD  option.  Note
          that in case that the ----DDDD option has been specified, the
          resulting filesystem is not ISO9660  level-1  compliant
          and will not be readable on MS-DOS.

     ----llll    Allow  full  30  character  filenames.   Normally  the
          ISO9660 filename will be in an 8.3 format which is com-
          patible with MS-DOS, even though the  ISO9660  standard
          allows  filenames  of  up to 30 characters.  If you use
          this option, the disc may be difficult to use on a  MS-
          DOS  system, but this comes in handy on some other sys-
          tems (such as the Amiga).  Use with caution.

     ----JJJJ    Generate Joliet directory records in addition to regu-
          lar  iso9660 file names.  This is primarily useful when
          the discs are to be used on  Windows-NT  or  Windows-95
          machines.    The  Joliet  filenames  are  specified  in
          Unicode and each path component can be up to 64 Unicode
          characters long.

     ----LLLL    Allow ISO9660 filenames to begin with a period.   Usu-
          ally,  a  leading dot is replaced with an underscore in
          order to maintain MS-DOS compatibility.

     ----lllloooogggg----ffffiiiilllleeee _l_o_g__f_i_l_e
          Redirect all error, warning and informational  messages
          to _l_o_g__f_i_l_e instead of the standard error.

     ----mmmm _g_l_o_b
          Exclude _g_l_o_b from being written to CDROM.   _g_l_o_b  is  a
          shell  wild-card-style  pattern that must match part of
          the filename (not the path as with option ----xxxx).  Techni-
          cally _g_l_o_b is matched against the _d->_d__n_a_m_e part of the
          directory entry.  Multiple globs may be excluded (up to
          1000).  Example:

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

          would exclude all files ending in ".o",  called  "core"
          or "foobar" to be copied to CDROM. Note that if you had
          a directory called "foobar" it too (and of  course  all
          its descendants) would be excluded.

          NOTE: The -m and -x option description should  both  be
          updated,  they  are wrong.  Both now work identical and
          use filename globbing. A file is excluded if either the
          last component matches or the whole path matches.

     ----eeeexxxxcccclllluuuuddddeeee----lllliiiisssstttt _f_i_l_e
          A file containing a list of  _g_l_o_b_s  to  be  exclude  as
          above.



Version 1.12b5      Last change: 7. Jan 2000                    7






MKISOFS(8)           Maintenance Procedures            MKISOFS(8)



     ----MMMM _p_a_t_h
          or

     ----MMMM _d_e_v_i_c_e
          Specifies path to existing iso9660 image to be  merged.
          The  alternate  form takes a SCSI device specifier that
          uses the same syntax as the ddddeeeevvvv==== parameter of ccccddddrrrreeeeccccoooorrrrdddd....
          The  output  of  mmmmkkkkiiiissssooooffffssss  will  be  a new session which
          should get written to the end of the image specified in
          -M.   Typically  this requires multi-session capability
          for the recorder and cdrom drive that you are  attempt-
          ing  to  write  this image to.  This option may only be
          used in conjunction with the ----CCCC option.

     ----NNNN    Omit version numbers from ISO9660  file  names.   This
          may  violate  the  ISO9660  standard, but no one really
          uses the version numbers anyway.  Use with caution.

     ----nnnnoooobbbbaaaakkkk

     ----nnnnoooo----bbbbaaaakkkk
          Do not  include  backup  files  files  on  the  iso9660
          filesystem.  If  the ----nnnnoooo----bbbbaaaakkkk option is specified, files
          that contain the characters '~' or '#' or end in '.bak'
          will  not be included (these are typically backup files
          for editors under unix).

     ----nnnnoooo----rrrrrrrr
          Do not use the Rock Ridge attributes from previous ses-
          sions.   This  may  help  to avoid getting into trouble
          when mmmmkkkkiiiissssooooffffssss finds illegal Rock Ridge signatures on  an
          old session.

     ----nnnnoooo----sssspppplllliiiitttt----ssssyyyymmmmlllliiiinnnnkkkk----ccccoooommmmppppoooonnnneeeennnnttttssss
          Don't split the SL components, but  begin  a  new  Con-
          tinuation Area (CE) instead. This may waste some space,
          but the SunOS 4.1.4 cdrom driver has a bug  in  reading
          split SL components (link_size = component_size instead
          of link_size += component_size).

     ----nnnnoooo----sssspppplllliiiitttt----ssssyyyymmmmlllliiiinnnnkkkk----ffffiiiieeeellllddddssss
          Don't split the SL 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 SL fields (a `/' can be dropped).

     ----oooo _f_i_l_e_n_a_m_e
          is the name of the file to which the iso9660 filesystem
          image  should  be  written.  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



Version 1.12b5      Last change: 7. Jan 2000                    8






MKISOFS(8)           Maintenance Procedures            MKISOFS(8)



          block special device for a regular disk drive, in which
          case the disk partition can be mounted and examined  to
          ensure that the premastering was done correctly.

     ----ppppaaaatttthhhh----lllliiiisssstttt _f_i_l_e
          A file containing a list of  _p_a_t_h_s_p_e_c  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 -, then the
          list is read from the standard input. There must be  at
          least one _p_a_t_h_s_p_e_c given on the command line as well.

     ----PPPP _p_u_b_l_i_s_h_e_r__i_d
          Specifies a text string that will be written  into  the
          volume  header.   This should describe the publisher of
          the CDROM, usually with a  mailing  address  and  phone
          number.   There is space on the disc for 128 characters
          of information.  This parameter can also be set in  the
          file  ....mmmmkkkkiiiissssooooffffssssrrrrcccc  with  PUBL=.   If  specified  in both
          places, the command line version is used.

     ----pppp _p_r_e_p_a_r_e_r__i_d
          Specifies a text string that will be written  into  the
          volume  header.   This  should describe the preparer of
          the CDROM, usually with a  mailing  address  and  phone
          number.   There is space on the disc for 128 characters
          of information.  This parameter can also be set in  the
          file  ....mmmmkkkkiiiissssooooffffssssrrrrcccc  with  PREP=.   If  specified  in both
          places, the command line version is used.

     ----pppprrrriiiinnnntttt----ssssiiiizzzzeeee
          Print estimated filesystem size and exit.  This  option
          is  needed  for  Disk  At  Once mode and with some CD-R
          drives when piping directly into ccccddddrrrreeeeccccoooorrrrdddd.... In this case
          it  is needed to know the size of the filesystem before
          the actual CD-creation is done.  The option -print-size
          allows  to get this size from a "dry-run" before the CD
          is actually written.

     ----RRRR    Generate SUSP and RR records using the Rock Ridge pro-
          tocol  to  further  describe  the  files on the iso9660
          filesystem.

     ----rrrr    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  exe-
          cute  bits, so that executables are globally executable
          on the  client.   If  any  search  bit  is  set  for  a



Version 1.12b5      Last change: 7. Jan 2000                    9






MKISOFS(8)           Maintenance Procedures            MKISOFS(8)



          directory,  set  all of the search bits, so that direc-
          tories are globally  searchable  on  the  client.   All
          write  bits  are  cleared,  because  the CD-Rom 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 file system, and set-id  bits
          are not desirable for uid 0 or gid 0.

     ----ssssyyyyssssiiiidddd _I_D
          Specifies the system ID.  This parameter  can  also  be
          set  in  the  file  ....mmmmkkkkiiiissssooooffffssssrrrrcccc with SYSI=system_id.  If
          specified in both places, the command line  version  is
          used.

     ----TTTT    Generate a file TRANS.TBL in  each  directory  on  the
          CDROM, which can be used on non-Rock Ridge capable sys-
          tems to help establish the correct file  names.   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.

     ----ttttaaaabbbblllleeee----nnnnaaaammmmeeee _T_A_B_L_E__N_A_M_E
          Alternative translation table file  name  (see  above).
          Implies  the   ----TTTT option.  If you are creating a multi-
          session image you must use the same name as in the pre-
          vious session.

     ----UUUU    Allows "Untranslated" filenames, completely  violating
          the  iso9660  standards  described above. Forces on the
          -d, -l, -L and -N flags, and also allows more than  one
          '.'  character  in  the filename, as well as mixed case
          filenames.  This is useful on HP-UX system,  where  the
          built-in  CDFS filesystem does not recognize ANY exten-
          sions. Use with extreme caution.

     ----VVVV _v_o_l_i_d
          Specifies the volume ID to be written into  the  master
          block.   This  parameter  can  also  be set in the file
          ....mmmmkkkkiiiissssooooffffssssrrrrcccc with VOLI=id.  If specified in both  places,
          the  command  line  version  is used.  Note that if you
          assign a volume ID, this is the name that will be  used
          as  the  mount point used by the Solaris volume manage-
          ment system and the name that is assigned to  the  disc
          on a Windows or Mac platform.

     ----vvvvoooollllsssseeeetttt _I_D
          Specifies the volset ID.  This parameter  can  also  be
          set  in  the  file  ....mmmmkkkkiiiissssooooffffssssrrrrcccc with VOLS=volset_id.  If
          specified in both places, the command line  version  is
          used.




Version 1.12b5      Last change: 7. Jan 2000                   10






MKISOFS(8)           Maintenance Procedures            MKISOFS(8)



     ----vvvvoooollllsssseeeetttt----ssssiiiizzzzeeee #
          Sets the volume set size to #. The volume set  size  is
          the  number of CD's that are in a CD set.  The ----vvvvoooollllsssseeeetttt----
          ssssiiiizzzzeeee option may be used to create CD's that are part of
          e.g.  a Operation System installation set of CD's.  The
          option ----vvvvoooollllsssseeeetttt----ssssiiiizzzzeeee must be specified before  ---- vvvvoooollllsssseeeetttt----
          sssseeeeqqqqnnnnoooo on each command line.

     ----vvvvoooollllsssseeeetttt----sssseeeeqqqqnnnnoooo #
          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 ----vvvvoooollllsssseeeetttt----ssssiiiizzzzeeee must be speci-
          fied before ----vvvvoooollllsssseeeetttt----sssseeeeqqqqnnnnoooo on each command line.

     ----vvvv    Verbose execution.

     ----xxxx _p_a_t_h
          Exclude _p_a_t_h from being written to CDROM.  _p_a_t_h must be
          the  complete  pathname that results from concatenating
          the pathname given as command  line  argument  and  the
          path relative to this directory.  Multiple paths may be
          excluded (up to 1000).  Example:

          mkisofs -o cd -x /local/dir1 -x /local/dir2 /local

          NOTE: The -m and -x option description should  both  be
          updated,  they  are wrong.  Both now work identical and
          use filename globbing. A file is excluded if either the
          last component matches or the whole path matches.

      ---- zzzz    Generate  special  SUSP  records  for  transparently
          compressed files.  This is only of use and interest for
          hosts that support transparent decompression.  This  is
          an experimental feature, and no hosts yet support this,
          but there are ALPHA patches for Linux that can make use
          of this feature.

BBBBOOOOOOOOTTTT IIIINNNNFFFFOOOORRRRMMMMAAAATTTTIIIIOOOONNNN TTTTAAAABBBBLLLLEEEE
     When the ----bbbbooooooootttt----iiiinnnnffffoooo----ttttaaaabbbblllleeee  option  is  given,  mmmmkkkkiiiissssooooffffssss  will
     modify the boot file specified by the ----bbbb option 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 reli-
     ably 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



Version 1.12b5      Last change: 7. Jan 2000                   11






MKISOFS(8)           Maintenance Procedures            MKISOFS(8)



       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).

CCCCOOOONNNNFFFFIIIIGGGGUUUURRRRAAAATTTTIIIIOOOONNNN
     mmmmkkkkiiiissssooooffffssss looks for the ....mmmmkkkkiiiissssooooffffssssrrrrcccc file, first in the  current
     working  directory,  then  in the user's home directory, and
     then in the directory in which the mmmmkkkkiiiissssooooffffssss binary is stored.
     This  file  is  assumed  to contain a series of lines of the
     form TTTTAAAAGGGG====_v_a_l_u_e, and in this  way  you  can  specify  certain
     options.   The  case  of  the  tag is not significant.  Some
     fields in the volume header are not settable on the  command
     line,  but  can  be altered through this facility.  Comments
     may be placed in this file, using lines which start  with  a
     hash (#) character.

     AAAAPPPPPPPPIIII The application identifier should describe the applica-
          tion  that  will be on the disc.  There is space on the
          disc for 128 characters of information.  May  be  over-
          ridden using the ----AAAA command line option.

     CCCCOOOOPPPPYYYY The copyright information, often the name of a file  on
          the  disc  containing  the  copyright notice.  There is
          space in the disc for  37  characters  of  information.
          May  be  overridden  using  the ----ccccooooppppyyyyrrrriiiigggghhhhtttt command line
          option.

     AAAABBBBSSSSTTTT The abstract information, often the name of a  file  on
          the disc containing an abstract.  There is space in the
          disc for 37 characters of information.  May be overrid-
          den using the ----aaaabbbbssssttttrrrraaaacccctttt command line option.

     BBBBIIIIBBBBLLLL The bibliographic information, often the name of a file
          on  the disc containing a bibliography.  There is space
          in the disc for 37 characters of information.   May  be
          overridden using the ----bbbbiiiilllliiiioooo command line option.

     PPPPRRRREEEEPPPP This should describe the preparer of the CDROM, usually
          with  a  mailing  address  and  phone number.  There is
          space on the disc for 128  characters  of  information.
          May be overridden using the ----pppp command line option.

     PPPPUUUUBBBBLLLL This should describe the publisher of the  CDROM,  usu-
          ally with a mailing address and phone number.  There is
          space on the disc for 128  characters  of  information.
          May be overridden using the ----PPPP command line option.




Version 1.12b5      Last change: 7. Jan 2000                   12






MKISOFS(8)           Maintenance Procedures            MKISOFS(8)



     SSSSYYYYSSSSIIII The System Identifier.  There is space on the disc  for
          32  characters of information.  May be overridden using
          the ----ssssyyyyssssiiiidddd command line option.

     VVVVOOOOLLLLIIII The Volume Identifier.  There is space on the disc  for
          32  characters of information.  May be overridden using
          the ----VVVV command line option.

     VVVVOOOOLLLLSSSS The Volume Set Name.  There is space on  the  disc  for
          128 characters of information.  May be overridden using
          the ----vvvvoooollllsssseeeetttt command line option.

     mmmmkkkkiiiissssooooffffssss can also be configured at compile time with defaults
     for many of these fields.  See the file defaults.h.

AAAAUUUUTTTTHHHHOOOORRRR
     mmmmkkkkiiiissssooooffffssss is not based on the standard mk*fs tools  for  unix,
     because  we  must  generate  a complete  copy of an existing
     filesystem on a disk in the  iso9660 filesystem.   The  name
     mkisofs  is  probably a bit of a misnomer, since it not only
     creates the filesystem, but it also populates it as well.

     Eric Youngdale <ericy@gnu.ai.mit.edu> or  <eric@andante.org>
     wrote  both  the  Linux isofs9660 filesystem and the mkisofs
     utility.  The copyright for the mkisofs utility is  held  by
     Yggdrasil Computing, Incorporated.

NNNNOOOOTTTTEEEESSSS
     MMMMkkkkiiiissssooooffffssss may safely be  installed  suid  root.  This  may  be
     needed  to  allow  mmmmkkkkiiiissssooooffffssss to read the previous session when
     creating a multi session image.

BBBBUUUUGGGGSSSS
     +o     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.

     +o     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 multi-session mode.

      +o     Does  not  properly  read  relocated  directories  in
          multi-session mode when adding data.

          Any relocated deep directory is lost if the new session
          does not include the deep directory.

          Repeat by: create first  session  with  deep  directory
          relocation  then add new session with a single dir that



Version 1.12b5      Last change: 7. Jan 2000                   13






MKISOFS(8)           Maintenance Procedures            MKISOFS(8)



          differs from the old deep path.

     +o     Does not re-use RR_MOVED when doing multi-session from
          TRANS.TBL

     +o     Does not  create  whole_name  entry  for  RR_MOVED  in
          multi-session mode.

     There may be some other ones.  Please, report  them  to  the
     author.

FFFFUUUUTTTTUUUURRRREEEE IIIIMMMMPPPPRRRROOOOVVVVEEEEMMMMEEEENNNNTTTTSSSS
     Some sort of gui interface.

AAAAVVVVAAAAIIIILLLLAAAABBBBIIIILLLLIIIITTTTYYYY
     mmmmkkkkiiiissssooooffffssss is available for anonymous ftp  from  tsx-11.mit.edu
     in /pub/linux/packages/mkisofs and many other mirror sites.


MMMMAAAAIIIILLLLIIIINNNNGGGG LLLLIIIISSSSTTTTSSSS
     If you want to actively take  part  on  the  development  of
     mkisofs,  you may join the cdwriting mailing list by sending
     mail to:

               other-cdwrite-request@lists.debian.org

     and include the  word  _s_u_b_s_c_r_i_b_e  in  the  body.   The  mail
     address of the list is:

               cdwrite@lists.debian.org


MMMMAAAAIIIINNNNTTTTAAAAIIIINNNNEEEERRRR
     Joerg Schilling
     Seestr. 110
     D-13353 Berlin
     Germany

     Mail bugs and suggestions to:

     sssscccchhhhiiiilllllllliiiinnnngggg@@@@ffffooookkkkuuuussss....ggggmmmmdddd....ddddeeee     or     jjjjssss@@@@ccccssss....ttttuuuu----bbbbeeeerrrrlllliiiinnnn....ddddeeee      or
     jjjjooooeeeerrrrgggg@@@@sssscccchhhhiiiillllyyyy....iiiissssddddnnnn....ccccssss....ttttuuuu----bbbbeeeerrrrlllliiiinnnn....ddddeeee













Version 1.12b5      Last change: 7. Jan 2000                   14



