1GENISOIMAGE(1) General Commands Manual GENISOIMAGE(1)
2
3
4
6 genisoimage - create ISO9660/Joliet/HFS filesystem with optional Rock
7 Ridge attributes
8
10 genisoimage [options] [-o filename] pathspec [pathspec ...]
11
13 genisoimage is a pre-mastering program to generate ISO9660/Joliet/HFS
14 hybrid filesystems.
15
16 genisoimage is capable of generating the System Use Sharing Protocol
17 records (SUSP) specified by the Rock Ridge Interchange Protocol. This
18 is used to further describe the files in the ISO9660 filesystem to a
19 Unix host, and provides information such as long filenames, UID/GID,
20 POSIX permissions, symbolic links, and block and character device
21 files.
22
23 If Joliet or HFS hybrid command line options are specified, genisoimage
24 will create the additional filesystem metadata needed for Joliet or
25 HFS. Otherwise genisoimage will generate a pure ISO9660 filesystem.
26
27 genisoimage can generate a true (or shared) HFS hybrid filesystem. The
28 same files are seen as HFS files when accessed from a Macintosh and as
29 ISO9660 files when accessed from other machines. HFS stands for Hierar‐
30 chical File System and is the native filesystem used on Macintosh com‐
31 puters.
32
33 As an alternative, genisoimage can generate the Apple Extensions to
34 ISO9660 for each file. These extensions provide each file with CREATOR,
35 TYPE and certain Finder flags when accessed from a Macintosh. See the
36 HFS MACINTOSH FILE FORMATS section below.
37
38 genisoimage takes a snapshot of a given directory tree, and generates a
39 binary image which will correspond to an ISO9660 and/or HFS filesystem
40 when written to a block device.
41
42 Each file written to the ISO9660 filesystem must have a filename in the
43 8.3 format (up to 8 characters, period, up to 3 characters, all upper‐
44 case), even if Rock Ridge is in use. This filename is used on systems
45 that are not able to make use of the Rock Ridge extensions (such as MS-
46 DOS), and each filename in each directory must be different from the
47 other filenames in the same directory. genisoimage generally tries to
48 form correct names by forcing the Unix filename to uppercase and trun‐
49 cating as required, but often this yields unsatisfactory results when
50 the truncated names are not all unique. genisoimage assigns weightings
51 to each filename, and if two names that are otherwise the same are
52 found, the name with the lower priority is renamed to include a 3-digit
53 number (guaranteed to be unique). For example, the two files foo.bar
54 and foo.bar.~1~ could be rendered as FOO.BAR;1 and FOO000.BAR;1.
55
56 When used with various HFS options, genisoimage will attempt to recog‐
57 nise files stored in a number of Apple/Unix file formats and will copy
58 the data and resource forks as well as any relevant Finder information.
59 See the HFS MACINTOSH FILE FORMATS section below for more about formats
60 genisoimage supports.
61
62 Note that genisoimage is not designed to communicate with the writer
63 directly. Most writers have proprietary command sets which vary from
64 one manufacturer to another, and you need a specialized tool to actu‐
65 ally burn the disc. wodim is one such tool. The latest version of
66 wodim is available from http://www.cdrkit.org/.
67
68 pathspec is the path of the directory tree to be copied into the
69 ISO9660 filesystem. Multiple paths can be specified, and genisoimage
70 will merge the files found in all of the specified path components to
71 form the filesystem image.
72
73 If the option -graft-points has been specified, it is possible to graft
74 the paths at points other than the root directory, and it is possible
75 to graft files or directories onto the cdrom image with names different
76 than what they have in the source filesystem. This is easiest to
77 illustrate with a couple of examples. Let's start by assuming that a
78 local file ../old.lis exists, and you wish to include it in the cdrom
79 image.
80
81 foo/bar/=../old.lis
82
83 will include old.lis in the cdrom image at /foo/bar/old.lis, while
84
85 foo/bar/xxx=../old.lis
86
87 will include old.lis in the cdrom image at /foo/bar/xxx. The same sort
88 of syntax can be used with directories as well. genisoimage will cre‐
89 ate any directories required such that the graft points exist on the
90 cdrom image — the directories do not need to appear in one of the
91 paths. By default, any directories that are created on the fly like
92 this will have permissions 0555 and appear to be owned by the person
93 running genisoimage. If you wish other permissions or owners of the
94 intermediate directories, see -uid, -gid, -dir-mode, -file-mode and
95 -new-dir-mode.
96
97 genisoimage will also run on Windows machines when compiled with
98 Cygnus' cygwin (available from http://www.cygwin.com/). Therefore most
99 references in this man page to Unix can be replaced with Win32.
100
102 Several options can be specified as defaults in a .genisoimagerc con‐
103 figuration file, as well as on the command line. If a parameter is
104 specified in both places, the setting from the command line is used.
105 For details on the format and possible locations of this file, see
106 genisoimagerc(5).
107
108 -abstract file
109 Specifies the abstract filename. There is space for 37 charac‐
110 ters. Equivalent to ABST in the .genisoimagerc file.
111
112 -A application_id
113
114 -appid application_id
115 Specifies a text string that will be written into the volume
116 header. This should describe the application that will be on
117 the disc. There is space for 128 characters. Equivalent to
118 APPI in the .genisoimagerc file.
119
120 -allow-limited-size
121 When processing files larger than 2GiB which cannot be easily
122 represented in ISO9660, add them with a shrunk visible file size
123 to ISO9660 and with the correct visible file size to the UDF
124 system. The result is an inconsistent filesystem and users need
125 to make sure that they really use UDF rather than ISO9660 driver
126 to read a such disk. Implies enabling -udf.
127
128 -allow-leading-dots
129
130 -ldots Allow ISO9660 filenames to begin with a period. Usually, a
131 leading dot is replaced with an underscore in order to maintain
132 MS-DOS compatibility.
133 This violates the ISO9660 standard, but it happens to work on
134 many systems. Use with caution.
135
136 -allow-lowercase
137 This options allows lowercase characters to appear in ISO9660
138 filenames.
139 This violates the ISO9660 standard, but it happens to work on
140 some systems. Use with caution.
141
142 -allow-multidot
143 This options allows more than one dot to appear in ISO9660 file‐
144 names. A leading dot is not affected by this option, it may be
145 allowed separately using -allow-leading-dots.
146 This violates the ISO9660 standard, but it happens to work on
147 many systems. Use with caution.
148
149 -biblio file
150 Specifies the bibliographic filename. There is space for 37
151 characters. Equivalent to BIBL in the .genisoimagerc file.
152
153 -cache-inodes
154
155 -no-cache-inodes
156 Enable or disable caching inode and device numbers to find hard
157 links to files. If genisoimage finds a hard link (a file with
158 multiple names), the file will also be hard-linked on the CD, so
159 the file contents only appear once. This helps to save space.
160 -cache-inodes is default on Unix-like operating systems, but
161 -no-cache-inodes is default on some other systems such as Cyg‐
162 win, because it is not safe to assume that inode numbers are
163 unique on those systems. (Some versions of Cygwin create fake
164 inode numbers using a weak hashing algorithm, which may produce
165 duplicates.) If two files have the same inode number but are
166 not hard links to the same file, genisoimage -cache-inodes will
167 not behave correctly. -no-cache-inodes is safe in all situa‐
168 tions, but in that case genisoimage cannot detect hard links, so
169 the resulting CD image may be larger than necessary.
170
171 -alpha-boot alpha_boot_image
172 Specifies the path and filename of the boot image to be used
173 when making an Alpha/SRM bootable CD. The pathname must be rela‐
174 tive to the source path specified to genisoimage.
175
176 -hppa-bootloader hppa_bootloader_image
177 Specifies the path and filename of the boot image to be used
178 when making an HPPA bootable CD. The pathname must be relative
179 to the source path specified to genisoimage. Other options are
180 required, at the very least a kernel filename and a boot command
181 line. See the HPPA NOTES section below for more information.
182
183 -hppa-cmdline hppa_boot_command_line
184 Specifies the command line to be passed to the HPPA boot loader
185 when making a bootable CD. Separate the parameters with spaces
186 or commas. More options must be passed to genisoimage, at the
187 very least a kernel filename and the boot loader filename. See
188 the HPPA NOTES section below for more information.
189
190 -hppa-kernel-32 hppa_kernel_32
191
192 -hppa-kernel-64 hppa_kernel_64
193 Specifies the path and filename of the 32-bit and/or 64-bit ker‐
194 nel images to be used when making an HPPA bootable CD. The path‐
195 names must be relative to the source path specified to genisoim‐
196 age. Other options are required, at the very least the boot
197 loader filename and the boot command line. See the HPPA NOTES
198 section below for more information.
199
200 -hppa-ramdisk hppa_ramdisk_image
201 Specifies the path and filename of the ramdisk image to be used
202 when making an HPPA bootable CD. The pathname must be relative
203 to the source path specified to genisoimage. This parameter is
204 optional. Other options are required, at the very least a ker‐
205 nel filename and the boot command line. See the HPPA NOTES sec‐
206 tion below for more information.
207
208 -mips-boot mips_boot_image
209 Specifies the path and filename of the boot image to be used
210 when making an SGI/big-endian MIPS bootable CD. The pathname
211 must be relative to the source path specified to genisoimage.
212 This option may be specified several times, to store up to 15
213 boot images.
214
215 -mipsel-boot mipsel_boot_image
216 Specifies the path and filename of the boot image to be used
217 when making an DEC/little-endian MIPS bootable CD. The pathname
218 must be relative to the source path specified to genisoimage.
219
220 -B img_sun4,img_sun4c,img_sun4m,img_sun4d,img_sun4e
221
222 -sparc-boot img_sun4,img_sun4c,img_sun4m,img_sun4d,img_sun4e
223 Specifies a comma-separated list of boot images that are needed
224 to make a bootable CD for SPARC systems. Partition 0 is used
225 for the ISO9660 image, the first image file is mapped to parti‐
226 tion 1. The comma-separated list may have up to 7 fields,
227 including empty fields. This option is required to make a
228 bootable CD for Sun SPARC systems. If -B or -sparc-boot has
229 been specified, the first sector of the resulting image will
230 contain a Sun disk label. This disk label specifies slice 0 for
231 the ISO9660 image and slices 1 to 7 for the boot images that
232 have been specified with this option. Byte offsets 512 to 8191
233 within each of the additional boot images must contain a primary
234 boot that works for the appropriate SPARC architecture. The rest
235 of each of the images usually contains a UFS filesystem used for
236 the primary kernel boot stage.
237
238 The implemented boot method is the one found with SunOS 4.x and
239 SunOS 5.x. However, it does not depend on SunOS internals but
240 only on properties of the Open Boot prom, so it should be usable
241 for any OS for SPARC systems. For more information also see the
242 NOTES section below.
243
244 If the special filename ... is used, the actual and all follow‐
245 ing boot partitions are mapped to the previous partition. If
246 genisoimage is called with -G image -B ... all boot partitions
247 are mapped to the partition that contains the ISO9660 filesystem
248 image and the generic boot image that is located in the first 16
249 sectors of the disc is used for all architectures.
250
251 -G generic_boot_image
252 Specifies the path and filename of the generic boot image to be
253 used when making a generic bootable CD. The boot image will be
254 placed on the first 16 sectors of the CD, before the ISO9660
255 primary volume descriptor. If this option is used together with
256 -sparc-boot, the Sun disk label will overlay the first 512 bytes
257 of the generic boot image.
258
259 -b eltorito_boot_image
260
261 -eltorito-boot eltorito_boot_image
262 Specifies the path and filename of the boot image to be used
263 when making an El Torito bootable CD for x86 PCs. The pathname
264 must be relative to the source path specified to genisoimage.
265 This option is required to make an El Torito bootable CD. The
266 boot image must be exactly 1200 kB, 1440 kB or 2880 kB, and
267 genisoimage will use this size when creating the output ISO9660
268 filesystem. The PC BIOS will use the image to emulate a floppy
269 disk, so the first 512-byte sector should contain PC boot code.
270 This will work, for example, if the boot image is a LILO-based
271 boot floppy.
272
273 If the boot image is not an image of a floppy, you need to add
274 either -hard-disk-boot or -no-emul-boot. If the system should
275 not boot off the emulated disk, use -no-boot.
276
277 If -sort has not been specified, the boot images are sorted with
278 low priority (+2) to the beginning of the medium. If you don't
279 like this, you need to specify a sort weight of 0 for the boot
280 images.
281
282 -eltorito-alt-boot
283 Start with a new set of El Torito boot parameters. Up to 63 El
284 Torito boot entries may be stored on a single CD.
285
286 -hard-disk-boot
287 Specifies that the boot image used to create El Torito bootable
288 CDs is a hard disk image. The image must begin with a master
289 boot record that contains a single partition.
290
291 -no-emul-boot
292 Specifies that the boot image used to create El Torito bootable
293 CDs is a "no emulation" image. The system will load and execute
294 this image without performing any disk emulation.
295
296 -no-boot
297 Specifies that the created El Torito CD should be marked as not
298 bootable. The system will provide an emulated drive for the
299 image, but will boot off a standard boot device.
300
301 -boot-load-seg segment_address
302 Specifies the load segment address of the boot image for no-emu‐
303 lation El Torito CDs.
304
305 -boot-load-size load_sectors
306 Specifies the number of "virtual" (512-byte) sectors to load in
307 no-emulation mode. The default is to load the entire boot file.
308 Some BIOSes may have problems if this is not a multiple of 4.
309
310 -boot-info-table
311 Specifies that a 56-byte table with information of the CD-ROM
312 layout will be patched in at offset 8 in the boot file. If this
313 option is given, the boot file is modified in the source
314 filesystem, so make a copy of this file if it cannot be easily
315 regenerated! See the EL TORITO BOOT INFO TABLE section for a
316 description of this table.
317
318 -C last_sess_start,next_sess_start
319
320 -cdrecord-params last_sess_start,next_sess_start
321 This option is needed to create a CD Extra or the image of a
322 second session or a higher-level session for a multisession
323 disc. -C takes two numbers separated by a comma. The first is
324 the first sector in the last session of the disc that should be
325 appended to. The second number is the starting sector number of
326 the new session. The correct numbers may be retrieved by call‐
327 ing wodim -msinfo ... If -C is used in conjunction with -M,
328 genisoimage will create a filesystem image that is intended to
329 be a continuation of the previous session. If -C is used with‐
330 out -M, genisoimage will create a filesystem image that is
331 intended to be used for a second session on a CD Extra. This is
332 a multisession CD that holds audio data in the first session and
333 an ISO9660 filesystem in the second session.
334
335 -c boot_catalog
336
337 -eltorito-catalog boot_catalog
338 Specifies the path and filename of the boot catalog, which is
339 required for an El Torito bootable CD. The pathname must be rel‐
340 ative to the source path specified to genisoimage. This file
341 will be inserted into the output tree and not created in the
342 source filesystem, so be sure the specified filename does not
343 conflict with an existing file, or it will be excluded. Usually
344 a name like boot.catalog is chosen.
345
346 If -sort has not been specified, the boot catalog sorted with
347 low priority (+1) to the beginning of the medium. If you don't
348 like this, you need to specify a sort weight of 0 for the boot
349 catalog.
350
351 -check-oldnames
352 Check all filenames imported from the old session for compliance
353 with the ISO9660 file naming rules. Without this option, only
354 names longer than 31 characters are checked, as these files are
355 a serious violation of the ISO9660 standard.
356
357 -check-session file
358 Check all old sessions for compliance with actual genisoimage
359 ISO9660 file naming rules. This is a high-level option that
360 combines -M file -C 0,0 -check-oldnames. For the parameter
361 file, see the description of -M.
362
363 -checksum_algorithm_iso alg1,alg2,...
364 Specify the checksum types desired for the output image.
365
366 -checksum_algorithm_template alg1,alg2,...
367 Specify the checksum types desired for the output jigdo tem‐
368 plate.
369
370 -copyright file
371 Specifies copyright information, typically a filename on the
372 disc. There is space for 37 characters. Equivalent to COPY in
373 the .genisoimagerc file.
374
375 -d
376
377 -omit-period
378 Do not append a period to files that do not have one.
379 This violates the ISO9660 standard, but it happens to work on
380 many systems. Use with caution.
381
382 -D
383
384 -disable-deep-relocation
385 Do not use deep directory relocation, and instead just pack them
386 in the way we see them.
387 If ISO9660:1999 has not been selected, this violates the ISO9660
388 standard, but it happens to work on many systems. Use with cau‐
389 tion.
390
391 -debug Set debug flag.
392
393 -dir-mode mode
394 Overrides the mode of directories used to create the image to
395 mode, specified as 4 digits of permission bits as in chmod(1).
396 This option automatically enables Rock Ridge extensions.
397
398 -dvd-video
399 Generate a DVD-Video compliant UDF filesystem. This is done by
400 sorting the order of the content of the appropriate files and by
401 adding padding between the files if needed. Note that the sort‐
402 ing only works if the DVD-Video filenames include uppercase
403 characters only.
404
405 Note that in order to get a DVD-Video compliant filesystem
406 image, you need to prepare a DVD-Video compliant directory tree.
407 This requires a directory VIDEO_TS (all caps) in the root direc‐
408 tory of the resulting DVD, and usually another directory
409 AUDIO_TS. VIDEO_TS needs to include all needed files (filenames
410 must be all caps) for a compliant DVD-Video filesystem.
411
412 -e efi_boot_file
413
414 -efi-boot efi_boot_file
415 Set EFI boot image name.
416
417 -f
418
419 -follow-links
420 Follow symbolic links when generating the filesystem. When this
421 option is not in use, symbolic links will be entered using Rock
422 Ridge if enabled, otherwise they will be ignored.
423
424 -file-mode mode
425 Overrides the mode of regular files used to create the image to
426 mode, specified as 4 digits of permission bits as in chmod(1).
427 This option automatically enables Rock Ridge extensions.
428
429 -gid gid
430 Overrides the group ID read from the source files to the value
431 of gid. Specifying this option automatically enables Rock Ridge
432 extensions.
433
434 -gui Switch the behaviour for a GUI. This currently makes the output
435 more verbose but may have other effects in the future.
436
437 -graft-points
438 Allow use of graft points for filenames. If this option is used,
439 all filenames are checked for graft points. The filename is
440 divided at the first unescaped equal sign. All occurrences of
441 `\' and `=' characters must be escaped with `\' if -graft-points
442 has been specified.
443
444 -hide glob
445 Hide any files matching glob, a shell wildcard pattern, from
446 being seen in the ISO9660 or Rock Ridge directory. glob may
447 match any part of the filename or path. If glob matches a
448 directory, the contents of that directory will be hidden. In
449 order to match a directory name, make sure the pathname does not
450 include a trailing `/' character. All the hidden files will
451 still be written to the output CD image file. See also
452 -hide-joliet, and README.hide. This option may be used multiple
453 times.
454
455 -hide-list file
456 A file containing a list of shell wildcards to be hidden. See
457 -hide.
458
459 -hidden glob
460 Add the hidden (existence) ISO9660 directory attribute for files
461 and directories matching glob, a shell wildcard pattern. This
462 attribute will prevent the files from being shown by some MS-DOS
463 and Windows commands. glob may match any part of the filename
464 or path. In order to match a directory name, make sure the
465 pathname does not include a trailing `/' character. This option
466 may be used multiple times.
467
468 -hidden-list file
469 A file containing a list of shell wildcards to get the hidden
470 attribute. See -hidden.
471
472 -hide-joliet glob
473 Hide files and directories matching glob, a shell wildcard pat‐
474 tern, from being seen in the Joliet directory. glob may match
475 any part of the filename or path. If glob matches a directory,
476 the contents of that directory will be hidden. In order to
477 match a directory name, make sure the pathname does not include
478 a trailing `/' character. All the hidden files will still be
479 written to the output CD image file. This option is usually
480 used with -hide. See also README.hide. This option may be used
481 multiple times.
482
483 -hide-joliet-list file
484 A file containing a list of shell wildcards to be hidden from
485 the Joliet tree. See -hide-joliet.
486
487 -hide-joliet-trans-tbl
488 Hide the TRANS.TBL files from the Joliet tree. These files usu‐
489 ally don't make sense in the Joliet world as they list the real
490 name and the ISO9660 name which may both be different from the
491 Joliet name.
492
493 -hide-rr-moved
494 Rename the directory RR_MOVED to .rr_moved in the Rock Ridge
495 tree. It seems to be impossible to completely hide the RR_MOVED
496 directory from the Rock Ridge tree. This option only makes the
497 visible tree less confusing for people who don't know what this
498 directory is for. If you need to have no RR_MOVED directory at
499 all, you should use -D. Note that if -D has been specified, the
500 resulting filesystem is not ISO9660 level-1 compliant and will
501 not be readable on MS-DOS. See also the NOTES section.
502
503 -input-charset charset
504 Input charset that defines the characters used in local file‐
505 names. To get a list of valid charset names, call genisoimage
506 -input-charset help. To get a 1:1 mapping, you may use default
507 as charset name. The default initial values are cp437 on DOS-
508 based systems and iso8859-1 on all other systems. See the CHAR‐
509 ACTER SETS section below for more details.
510
511 -output-charset charset
512 Output charset that defines the characters that will be used in
513 Rock Ridge filenames. Defaults to the input charset. See CHAR‐
514 ACTER SETS section below for more details.
515
516 -iso-level level
517 Set the ISO9660 conformance level. Valid numbers are 1 to 4.
518
519 With level 1, files may only consist of one section and file‐
520 names are restricted to 8.3 characters.
521
522 With level 2, files may only consist of one section.
523
524 With level 3, no restrictions (other than ISO-9660:1988) do
525 apply.
526
527 With all ISO9660 levels from 1 to 3, all filenames are
528 restricted to uppercase letters, numbers and underscores (_).
529 Filenames are limited to 31 characters, directory nesting is
530 limited to 8 levels, and pathnames are limited to 255 charac‐
531 ters.
532
533 Level 4 officially does not exist but genisoimage maps it to
534 ISO-9660:1999, which is ISO9660 version 2.
535
536 With level 4, an enhanced volume descriptor with version number
537 and file structure version number set to 2 is emitted. Direc‐
538 tory nesting is not limited to 8 levels, there is no need for a
539 file to contain a dot and the dot has no special meaning, file‐
540 names do not have version numbers, and filenames can be up to
541 207 characters long, or 197 characters if Rock Ridge is used.
542
543 When creating Version 2 images, genisoimage emits an enhanced
544 volume descriptor, similar but not identical to a primary volume
545 descriptor. Be careful not to use broken software to make
546 ISO9660 images bootable by assuming a second PVD copy and patch‐
547 ing this putative PVD copy into an El Torito VD.
548
549 -J Generate Joliet directory records in addition to regular ISO9660
550 filenames. This is primarily useful when the discs are to be
551 used on Windows machines. Joliet filenames are specified in
552 Unicode and each path component can be up to 64 Unicode charac‐
553 ters long. Note that Joliet is not a standard — only Microsoft
554 Windows and Linux systems can read Joliet extensions. For
555 greater portability, consider using both Joliet and Rock Ridge
556 extensions.
557
558 -joliet-long
559 Allow Joliet filenames to be up to 103 Unicode characters,
560 instead of 64. This breaks the Joliet specification, but
561 appears to work. Use with caution.
562
563 -jcharset charset
564 A combination of -J -input-charset charset. See the CHARACTER
565 SETS section below for more details.
566
567 -l
568
569 -full-iso9660-filenames
570 Allow full 31-character filenames. Normally the ISO9660 file‐
571 name will be in an 8.3 format which is compatible with MS-DOS,
572 even though the ISO9660 standard allows filenames of up to 31
573 characters. If you use this option, the disc may be difficult
574 to use on a MS-DOS system, but will work on most other systems.
575 Use with caution.
576
577 -L Outdated option; use -allow-leading-dots instead.
578
579 -jigdo-jigdo jigdo_file
580 Produce a jigdo .jigdo metadata file as well as the filesystem
581 image. See the JIGDO NOTES section below for more information.
582
583 -jigdo-template template_file
584 Produce a jigdo .template file as well as the filesystem image.
585 See the JIGDO NOTES section below for more information.
586
587 -jigdo-min-file-size size
588 Specify the minimum size for a file to be listed in the .jigdo
589 file. Default (and minimum allowed) is 1KB. See the JIGDO NOTES
590 section below for more information.
591
592 -jigdo-force-md5 path
593 Specify a file pattern where files must be contained in the
594 externally-supplied MD5 list as supplied by -md5-list. See the
595 JIGDO NOTES section below for more information.
596
597 -jigdo-exclude path
598 Specify a file pattern where files will not be listed in the
599 .jigdo file. See the JIGDO NOTES section below for more informa‐
600 tion.
601
602 -jigdo-map path
603 Specify a pattern mapping for the jigdo file (e.g. Debian=/mir‐
604 ror/debian). See the JIGDO NOTES section below for more infor‐
605 mation.
606
607 -md5-list md5_file
608 Specify a file containing the MD5sums, sizes and pathnames of
609 the files to be included in the .jigdo file. See the JIGDO NOTES
610 section below for more information.
611
612 -jigdo-template-compress algorithm
613 Specify a compression algorithm to use for template date. gzip
614 and bzip2 are currently supported, and gzip is the default. See
615 the JIGDO NOTES section below for more information.
616
617 -log-file log_file
618 Redirect all error, warning and informational messages to
619 log_file instead of the standard error.
620
621 -m glob
622 Exclude files matching glob, a shell wildcard pattern, from
623 being written to CD-ROM. glob may match either the filename
624 component or the full pathname. This option may be used multi‐
625 ple times. For example:
626
627 genisoimage -o rom -m '*.o' -m core -m foobar
628
629 would exclude all files ending in `.o', or called core or foobar
630 from the image. Note that if you had a directory called foobar,
631 it too (and of course all its descendants) would be excluded.
632
633 -exclude-list file
634 A file containing a list of shell wildcards to be excluded. See
635 -m.
636
637 -max-iso9660-filenames
638 Allow ISO9660 filenames to be up to 37 characters long. This
639 option enables -N as the extra name space is taken from the
640 space reserved for file version numbers.
641 This violates the ISO9660 standard, but it happens to work on
642 many systems. Although a conforming application needs to pro‐
643 vide a buffer space of at least 37 characters, discs created
644 with this option may cause a buffer overflow in the reading
645 operating system. Use with extreme care.
646
647 -M path
648
649 -M device
650
651 -dev device
652 Specifies path to existing ISO9660 image to be merged. The
653 alternate form takes a SCSI device specifier that uses the same
654 syntax as the dev= parameter of wodim. The output of genisoim‐
655 age will be a new session which should get written to the end of
656 the image specified in -M. Typically this requires multisession
657 capability for the CD recorder used to write the image. This
658 option may only be used in conjunction with -C.
659
660 -N
661
662 -omit-version-number
663 Omit version numbers from ISO9660 filenames.
664 This violates the ISO9660 standard, but no one really uses the
665 version numbers anyway. Use with caution.
666
667 -new-dir-mode mode
668 Specify the mode, a 4-digit number as used in chmod(1), to use
669 when creating new directories in the filesystem image. The
670 default is 0555.
671
672 -nobak
673
674 -no-bak
675 Exclude backup files files on the ISO9660 filesystem; that is,
676 filenames that contain the characters `~' or `#' or end in .bak.
677 These are typically backup files for Unix text editors.
678
679 -force-rr
680 Do not use the automatic Rock Ridge attributes recognition for
681 previous sessions. This can work around problems with images
682 created by, e.g., NERO Burning ROM.
683
684 -no-rr Do not use the Rock Ridge attributes from previous sessions.
685 This may help to avoid problems when genisoimage finds illegal
686 Rock Ridge signatures on an old session.
687
688 -no-split-symlink-components
689 Don't split the symlink components, but begin a new Continuation
690 Area (CE) instead. This may waste some space, but the SunOS
691 4.1.4 cdrom driver has a bug in reading split symlink compo‐
692 nents.
693
694 It is questionable whether this option is useful nowadays.
695
696 -no-split-symlink-fields
697 Don't split the symlink fields, but begin a new Continuation
698 Area (CE) instead. This may waste some space, but the SunOS
699 4.1.4 and Solaris 2.5.1 cdrom driver have a bug in reading split
700 symlink fields (a `/' can be dropped).
701
702 It is questionable whether this option is useful nowadays.
703
704 -o filename
705 Specify the output file for the the ISO9660 filesystem image.
706 This can be a disk file, a tape drive, or it can correspond
707 directly to the device name of the optical disc writer. If not
708 specified, stdout is used. Note that the output can also be a
709 block device for a regular disk partition, in which case the
710 ISO9660 filesystem can be mounted normally to verify that it was
711 generated correctly.
712
713 -pad Pad the end of the whole image by 150 sectors (300 kB). This
714 option is enabled by default. If used in combination with -B,
715 padding is inserted between the ISO9660 partition and the boot
716 partitions, such that the first boot partition starts on a sec‐
717 tor number that is a multiple of 16.
718
719 The padding is needed as many operating systems (e.g. Linux)
720 implement read-ahead bugs in their filesystem I/O. These bugs
721 result in read errors on files that are located near the end of
722 a track, particularly if the disc is written in Track At Once
723 mode, or where a CD audio track follows the data track.
724
725 -no-pad
726 Do not pad the end by 150 sectors (300 kB) and do not make the
727 the boot partitions start on a multiple of 16 sectors.
728
729 -path-list file
730 A file containing a list of pathspec directories and filenames
731 to be added to the ISO9660 filesystem. This list of pathspecs
732 are processed after any that appear on the command line. If the
733 argument is -, the list is read from the standard input.
734
735 -P Outdated option; use -publisher instead.
736
737 -publisher publisher_id
738 Specifies a text string that will be written into the volume
739 header. This should describe the publisher of the CD-ROM, usu‐
740 ally with a mailing address and phone number. There is space
741 for 128 characters. Equivalent to PUBL in the .genisoimagerc
742 file.
743
744 -p preparer_id
745
746 -preparer preparer_id
747 Specifies a text string that will be written into the volume
748 header. This should describe the preparer of the CD-ROM, usu‐
749 ally with a mailing address and phone number. There is space
750 for 128 characters. Equivalent to PREP in the .genisoimagerc
751 file.
752
753 -print-size
754 Print estimated filesystem size in multiples of the sector size
755 (2048 bytes) and exit. This option is needed for Disk At Once
756 mode and with some CD-R drives when piping directly into wodim,
757 cases where wodim needs to know the size of the filesystem image
758 in advance. Old versions of mkisofs wrote this information
759 (among other information) to stderr. As this turns out to be
760 hard to parse, the number without any other information is now
761 printed on stdout too. If you like to write a simple shell
762 script, redirect stderr and catch the number from stdout. This
763 may be done with:
764
765 cdblocks=` genisoimage -print-size -quiet ... `
766 genisoimage ... | wodim ... tsize=${cdblocks}s -
767
768 -quiet This makes genisoimage even less verbose. No progress output
769 will be provided.
770
771 -R
772
773 -rock Generate SUSP and RR records using the Rock Ridge protocol to
774 further describe the files on the ISO9660 filesystem.
775
776 -r
777
778 -rational-rock
779 This is like the -R option, but file ownership and modes are set
780 to more useful values. The uid and gid are set to zero, because
781 they are usually only useful on the author's system, and not
782 useful to the client. All the file read bits are set true, so
783 that files and directories are globally readable on the client.
784 If any execute bit is set for a file, set all of the execute
785 bits, so that executables are globally executable on the client.
786 If any search bit is set for a directory, set all of the search
787 bits, so that directories are globally searchable on the client.
788 All write bits are cleared, because the filesystem will be
789 mounted read-only in any case. If any of the special mode bits
790 are set, clear them, because file locks are not useful on a
791 read-only filesystem, and set-id bits are not desirable for uid
792 0 or gid 0. When used on Win32, the execute bit is set on all
793 files. This is a result of the lack of file permissions on Win32
794 and the Cygwin POSIX emulation layer. See also -uid, -gid,
795 -dir-mode, -file-mode and -new-dir-mode.
796
797 -relaxed-filenames
798 Allows ISO9660 filenames to include all 7-bit ASCII characters
799 except lowercase letters.
800 This violates the ISO9660 standard, but it happens to work on
801 many systems. Use with caution.
802
803 -root dir
804 Moves all files and directories into dir in the image. This is
805 essentially the same as using -graft-points and adding dir in
806 front of every pathspec, but is easier to use. dir may actually
807 be several levels deep. It is created with the same permissions
808 as other graft points.
809
810 -old-root dir
811 This option is necessary when writing a multisession image and
812 the previous (or even older) session was written with -root dir.
813 Using a directory name not found in the previous session causes
814 genisoimage to abort with an error. Without this option,
815 genisoimage would not be able to find unmodified files and would
816 be forced to write their data into the image once more. -root
817 and -old-root are meant to be used together to do incremental
818 backups. The initial session would e.g. use: genisoimage -root
819 backup_1 dirs. The next incremental backup with genisoimage
820 -root backup_2 -old-root backup_1 dirs would take another snap‐
821 shot of these directories. The first snapshot would be found in
822 backup_1, the second one in backup_2, but only modified or new
823 files need to be written into the second session. Without these
824 options, new files would be added and old ones would be pre‐
825 served. But old ones would be overwritten if the file was modi‐
826 fied. Recovering the files by copying the whole directory back
827 from CD would also restore files that were deleted intention‐
828 ally. Accessing several older versions of a file requires sup‐
829 port by the operating system to choose which sessions are to be
830 mounted.
831
832 -s sector type
833
834 -sectype sector type
835 Set output sector type to e.g. data/xa1/raw.
836 .TP -sort sort_file Sort file locations on the media. Sorting
837 is controlled by a file that contains pairs of filenames and
838 sorting offset weighting. If the weighting is higher, the file
839 will be located closer to the beginning of the media, if the
840 weighting is lower, the file will be located closer to the end
841 of the media. There must be only one space or tabs character
842 between the filename and the weight and the weight must be the
843 last characters on a line. The filename is taken to include all
844 the characters up to, but not including the last space or tab
845 character on a line. This is to allow for space characters to be
846 in, or at the end of a filename. This option does not sort the
847 order of the filenames that appear in the ISO9660 directory. It
848 sorts the order in which the file data is written to the CD
849 image, which is useful in order to optimize the data layout on a
850 CD. See README.sort for more details.
851
852 -sparc-boot img_sun4,img_sun4c,img_sun4m,img_sun4d,img_sun4e
853 See -B above.
854
855 -sparc-label label
856 Set the Sun disk label name for the Sun disk label that is cre‐
857 ated with -sparc-boot.
858
859 -split-output
860 Split the output image into several files of approximately 1 GB
861 each. This helps to create DVD-sized ISO9660 images on operat‐
862 ing systems without large file support. wodim will concatenate
863 more than one file into a single track if writing to a DVD. To
864 make -split-output work, -o filename must be specified. The
865 resulting output images will be named: filename_00, filename_01,
866 filename_02....
867
868 -stream-media-size #
869 Select streaming operation and set the media size to # sectors.
870 This allows you to pipe the output of the tar(1) program into
871 genisoimage and to create an ISO9660 filesystem without the need
872 of an intermediate tar archive file. If this option has been
873 specified, genisoimage reads from stdin and creates a file with
874 the name STREAM.IMG. The maximum size of the file (with pad‐
875 ding) is 200 sectors less than the specified media size. If
876 -no-pad has been specified, the file size is 50 sectors less
877 than the specified media size. If the file is smaller,
878 genisoimage will write padding. This may take awhile.
879
880 The option -stream-media-size creates simple ISO9660 filesystems
881 only and may not used together with multisession or hybrid
882 filesystem options.
883
884 -stream-file-name name
885 Reserved for future use.
886
887 -sunx86-boot UFS_img,,,AUX1_img
888 Specifies a comma-separated list of filesystem images that are
889 needed to make a bootable CD for Solaris x86 systems.
890
891 Note that partition 1 is used for the ISO9660 image and that
892 partition 2 is the whole disk, so partition 1 and 2 may not be
893 used by external partition data. The first image file is mapped
894 to partition 0. There may be empty fields in the comma-sepa‐
895 rated list, and list entries for partition 1 and 2 must be
896 empty. The maximum number of supported partitions is 8
897 (although the Solaris x86 partition table could support up to 16
898 partitions), so it is impossible to specify more than 6 parti‐
899 tion images. This option is required to make a bootable CD for
900 Solaris x86 systems.
901
902 If -sunx86-boot has been specified, the first sector of the
903 resulting image will contain a PC fdisk label with a Solaris
904 type 0x82 fdisk partition that starts at offset 512 and spans
905 the whole CD. In addition, for the Solaris type 0x82 fdisk par‐
906 tition, there is a SVr4 disk label at offset 1024 in the first
907 sector of the CD. This disk label specifies slice 0 for the
908 first (usually UFS type) filesystem image that is used to boot
909 the PC and slice 1 for the ISO9660 image. Slice 2 spans the
910 whole CD slice 3 ... slice 7 may be used for additional filesys‐
911 tem images that have been specified with this option.
912
913 A Solaris x86 boot CD uses a 1024 byte sized primary boot that
914 uses the El-Torito no-emulation boot mode and a secondary
915 generic boot that is in CD sectors 1..15. For this reason, both
916 -b bootimage -no-emul-boot and -G genboot must be specified.
917
918 -sunx86-label label
919 Set the SVr4 disk label name for the SVr4 disk label that is
920 created with -sunx86-boot.
921
922 -sysid ID
923 Specifies the system ID. There is space for 32 characters.
924 Equivalent to SYSI in the .genisoimagerc file.
925
926 -T
927
928 -translation-table
929 Generate a file TRANS.TBL in each directory on the CD-ROM, which
930 can be used on non-Rock Ridge-capable systems to help establish
931 the correct filenames. There is also information present in the
932 file that indicates the major and minor numbers for block and
933 character devices, and each symlink has the name of the link
934 file given.
935
936 -table-name table_name
937 Alternative translation table filename (see above). Implies -T.
938 If you are creating a multisession image you must use the same
939 name as in the previous session.
940
941 -ucs-level level
942 Set Unicode conformance level in the Joliet SVD. The default
943 level is 3. It may be set to 1..3 using this option.
944
945 -udf Include UDF filesystem support in the generated filesystem
946 image. UDF support is currently in alpha status and for this
947 reason, it is not possible to create UDF-only images. UDF data
948 structures are currently coupled to the Joliet structures, so
949 there are many pitfalls with the current implementation. There
950 is no UID/GID support, there is no POSIX permission support,
951 there is no support for symlinks. Note that UDF wastes the
952 space from sector ~20 to sector 256 at the beginning of the disc
953 in addition to the space needed for real UDF data structures.
954
955 -uid uid
956 Overrides the uid read from the source files to the value of
957 uid. Specifying this option automatically enables Rock Ridge
958 extensions.
959
960 -use-fileversion
961 The option -use-fileversion allows genisoimage to use file ver‐
962 sion numbers from the filesystem. If the option is not speci‐
963 fied, genisoimage creates a version number of 1 for all files.
964 File versions are strings in the range ;1 to ;32767 This option
965 is the default on VMS.
966
967 -U
968
969 -untranslated-filenames
970 Allows "untranslated" filenames, completely violating the
971 ISO9660 standards described above. Enables the following flags:
972 -d -l -N -allow-leading-dots -relaxed-filenames -allow-lowercase
973 -allow-multidot -no-iso-translate. Allows more than one `.'
974 character in the filename, as well as mixed-case filenames.
975 This is useful on HP-UX, where the built-in cdfs filesystem does
976 not recognize any extensions. Use with extreme caution.
977
978 -no-iso-translate
979 Do not translate the characters `#' and `~' which are invalid
980 for ISO9660 filenames. Although invalid, these characters are
981 often used by Microsoft systems.
982 This violates the ISO9660 standard, but it happens to work on
983 many systems. Use with caution.
984
985 -V volid
986 Specifies the volume ID (volume name or label) to be written
987 into the master block. There is space for 32 characters.
988 Equivalent to VOLI in the .genisoimagerc file. The volume ID is
989 used as the mount point by the Solaris volume manager and as a
990 label assigned to a disc on various other platforms such as Win‐
991 dows and Apple Mac OS.
992
993 -volset ID
994 Specifies the volume set ID. There is space for 128 characters.
995 Equivalent to VOLS in the .genisoimagerc file.
996
997 -volset-size #
998 Sets the volume set size to #. The volume set size is the num‐
999 ber of CDs that are in a CD volume set. A volume set is a col‐
1000 lection of one or more volumes, on which a set of files is
1001 recorded.
1002
1003 Volume Sets are not intended to be used to create a set numbered
1004 CDs that are part of e.g. a Operation System installation set of
1005 CDs. Volume Sets are rather used to record a big directory tree
1006 that would not fit on a single volume. Each volume of a Volume
1007 Set contains a description of all the directories and files that
1008 are recorded on the volumes where the sequence numbers are less
1009 than, or equal to, the assigned Volume Set Size of the current
1010 volume.
1011
1012 genisoimage currently does not support a -volset-size that is
1013 larger than 1.
1014
1015 The option -volset-size must be specified before -volset-seqno
1016 on each command line.
1017
1018 -volset-seqno #
1019 Sets the volume set sequence number to #. The volume set
1020 sequence number is the index number of the current CD in a CD
1021 set. The option -volset-size must be specified before
1022 -volset-seqno on each command line.
1023
1024 -v
1025
1026 -verbose
1027 Verbose execution. If given twice on the command line, extra
1028 debug information will be printed.
1029
1030 -x glob
1031 Identical to -m glob.
1032
1033 -XA Generate XA directory attruibutes.
1034
1035 -xa Generate rationalized XA directory attruibutes.
1036
1037 -z
1038
1039 -transparent-compression
1040 Generate special RRIP records for transparently compressed
1041 files. This is only of use and interest for hosts that support
1042 transparent decompression, such as Linux 2.4.14 or later. You
1043 must specify -R or -r to enable Rock Ridge, and generate com‐
1044 pressed files using the mkzftree utility before running
1045 genisoimage. Note that transparent compression is a nonstandard
1046 Rock Ridge extension. The resulting disks are only transpar‐
1047 ently readable if used on Linux. On other operating systems you
1048 will need to call mkzftree by hand to decompress the files.
1049
1051 -hfs Create an ISO9660/HFS hybrid CD. This option should be used in
1052 conjunction with the -map, -magic and/or the various double dash
1053 options given below.
1054
1055 -apple Create an ISO9660 CD with Apple's extensions. Similar to -hfs,
1056 except that the Apple Extensions to ISO9660 are added instead of
1057 creating an HFS hybrid volume. Former genisoimage versions did
1058 include Rock Ridge attributes by default if -apple was speci‐
1059 fied. This versions of genisoimage does not do this anymore. If
1060 you like to have Rock Ridge attributes, you need to specify this
1061 separately.
1062
1063 -map mapping_file
1064 Use the mapping_file to set the CREATOR and TYPE information for
1065 a file based on the filename's extension. A filename is mapped
1066 only if it is not one of the know Apple/Unix file formats. See
1067 the HFS CREATOR/TYPE section below.
1068
1069 -magic magic_file
1070 The CREATOR and TYPE information is set by using a file's magic
1071 number (usually the first few bytes of a file). The magic_file
1072 is only used if a file is not one of the known Apple/Unix file
1073 formats, or the filename extension has not been mapped using
1074 -map. See the HFS CREATOR/TYPE section below for more details.
1075
1076 -hfs-creator creator
1077 Set the default CREATOR for all files. Must be exactly 4 charac‐
1078 ters. See the HFS CREATOR/TYPE section below for more details.
1079
1080 -hfs-type type
1081 Set the default TYPE for all files. Must be exactly 4 charac‐
1082 ters. See the HFS CREATOR/TYPE section below for more details.
1083
1084 -probe Search the contents of files for all the known Apple/Unix file
1085 formats. See the HFS MACINTOSH FILE FORMATS section below for
1086 more about these formats. However, the only way to check for
1087 MacBinary and AppleSingle files is to open and read them, so
1088 this option may increase processing time. It is better to use
1089 one or more double dash options given below if the Apple/Unix
1090 formats in use are known.
1091
1092 -no-desktop
1093 Do not create (empty) Desktop files. New HFS Desktop files will
1094 be created when the CD is used on a Macintosh (and stored in the
1095 System Folder). By default, empty Desktop files are added to
1096 the HFS volume.
1097
1098 -mac-name
1099 Use the HFS filename as the starting point for the ISO9660,
1100 Joliet and Rock Ridge filenames. See the HFS MACINTOSH FILENAMES
1101 section below for more information.
1102
1103 -boot-hfs-file driver_file
1104 Installs the driver_file that may make the CD bootable on a Mac‐
1105 intosh. See the HFS BOOT DRIVER section below. (Alpha).
1106
1107 -part Generate an HFS partition table. By default, no partition table
1108 is generated, but some older Macintosh CD-ROM drivers need an
1109 HFS partition table on the CD-ROM to be able to recognize a
1110 hybrid CD-ROM.
1111
1112 -auto AutoStart_file
1113 Make the HFS CD use the QuickTime 2.0 Autostart feature to
1114 launch an application or document. The given filename must be
1115 the name of a document or application located at the top level
1116 of the CD. The filename must be less than 12 characters.
1117 (Alpha).
1118
1119 -cluster-size size
1120 Set the size in bytes of the cluster or allocation units of PC
1121 Exchange files. Implies --exchange. See the HFS MACINTOSH FILE
1122 FORMATS section below.
1123
1124 -hide-hfs glob
1125 Hide glob, a shell wildcard pattern, from the HFS volume. The
1126 file or directory will still exist in the ISO9660 and/or Joliet
1127 directory. glob may match any part of the filename. Multiple
1128 globs may be excluded. Example:
1129
1130 genisoimage -o rom -hfs -hide-hfs '*.o' -hide-hfs foobar
1131
1132 would exclude all files ending in `.o' or called foobar from the
1133 HFS volume. Note that if you had a directory called foobar, it
1134 too (and of course all its descendants) would be excluded. The
1135 glob can also be a path name relative to the source directories
1136 given on the command line. Example:
1137
1138 genisoimage -o rom -hfs -hide-hfs src/html src
1139
1140 would exclude just the file or directory called html from the
1141 src directory. Any other file or directory called html in the
1142 tree will not be excluded. Should be used with -hide and/or
1143 -hide-joliet. In order to match a directory name, make sure the
1144 pattern does not include a trailing `/' character. See
1145 README.hide for more details.
1146
1147 -hide-hfs-list file
1148 Specify a file containing a list of wildcard patterns to be hid‐
1149 den as in -hide-hfs.
1150
1151 -hfs-volid hfs_volid
1152 Volume name for the HFS partition. This is the name that is
1153 assigned to the disc on a Macintosh and replaces the volid used
1154 with -V.
1155
1156 -icon-position
1157 Use the icon position information, if it exists, from the
1158 Apple/Unix file. The icons will appear in the same position as
1159 they would on a Macintosh desktop. Folder location and size on
1160 screen, its scroll positions, folder View (view as Icons, Small
1161 Icons, etc.) are also preserved. (Alpha).
1162
1163 -root-info file
1164 Set the location, size on screen, scroll positions, folder View
1165 etc. for the root folder of an HFS volume. See README.rootinfo
1166 for more information. (Alpha)
1167
1168 -prep-boot file
1169 PReP boot image file. Up to 4 are allowed. See README.prep_boot
1170 for more information. (Alpha)
1171
1172 -chrp-boot
1173 Add CHRP boot header.
1174
1175 -input-hfs-charset charset
1176 Input charset that defines the characters used in HFS filenames
1177 when used with -mac-name. The default charset is cp10000 (Mac
1178 Roman). See the CHARACTER SETS and HFS MACINTOSH FILENAMES sec‐
1179 tions below for more details.
1180
1181 -output-hfs-charset charset
1182 Output charset that defines the characters that will be used in
1183 the HFS filenames. Defaults to the input charset. See the CHAR‐
1184 ACTER SETS section below for more details.
1185
1186 -hfs-unlock
1187 By default, genisoimage will create an HFS volume that is
1188 locked. This option leaves the volume unlocked so that other
1189 applications (e.g. hfsutils) can modify the volume. See the HFS
1190 PROBLEMS/LIMITATIONS section below for warnings about using this
1191 option.
1192
1193 -hfs-bless folder_name
1194 "Bless" the given directory (folder). This is usually the System
1195 Folder and is used in creating HFS bootable CDs. The name of the
1196 directory must be the whole path name as genisoimage sees it.
1197 E.g., if the given pathspec is ./cddata and the required folder
1198 is called System Folder, the whole path name is "/cddata/System
1199 Folder" (remember to use quotes if the name contains spaces).
1200
1201 -hfs-parms parameters
1202 Override certain parameters used to create the HFS filesystem.
1203 Unlikely to be used in normal circumstances. See the lib‐
1204 hfs_iso/hybrid.h source file for details.
1205
1206 --cap Look for AUFS CAP Macintosh files. Search for CAP Apple/Unix
1207 file formats only. Searching for the other possible Apple/Unix
1208 file formats is disabled, unless other double dash options are
1209 given.
1210
1211 --netatalk
1212 Look for NETATALK Macintosh files
1213
1214 --double
1215 Look for AppleDouble Macintosh files
1216
1217 --ethershare
1218 Look for Helios EtherShare Macintosh files
1219
1220 --ushare
1221 Look for IPT UShare Macintosh files
1222
1223 --exchange
1224 Look for PC Exchange Macintosh files
1225
1226 --sgi Look for SGI Macintosh files
1227
1228 --xinet
1229 Look for XINET Macintosh files
1230
1231 --macbin
1232 Look for MacBinary Macintosh files
1233
1234 --single
1235 Look for AppleSingle Macintosh files
1236
1237 --dave Look for Thursby Software Systems DAVE Macintosh files
1238
1239 --sfm Look for Microsoft's Services for Macintosh files (NT only)
1240 (Alpha)
1241
1242 --osx-double
1243 Look for Mac OS X AppleDouble Macintosh files
1244
1245 --osx-hfs
1246 Look for Mac OS X HFS Macintosh files
1247
1249 genisoimage processes filenames in a POSIX-compliant way as strings of
1250 8-bit characters. To represent all codings for all languages, 8-bit
1251 characters are not sufficient. Unicode or ISO-10646 define character
1252 codings that need at least 21 bits to represent all known languages.
1253 They may be represented with UTF-32, UTF-16 or UTF-8 coding. UTF-32
1254 uses a plain 32-bit coding but seems to be uncommon. UTF-16 is used by
1255 Microsoft with Win32 with the disadvantage that 16-bit characters are
1256 not compliant with the POSIX filesystem interface.
1257
1258 Modern Unix operating systems may use UTF-8 coding for filenames. Each
1259 32-bit character is represented by one or more 8-bit characters. If a
1260 character is coded in ISO-8859-1 (used in Central Europe and North
1261 America) is maps 1:1 to a UTF-32 or UTF-16 coded Unicode character. If
1262 a character is coded in 7-Bit ASCII (used in USA and other countries
1263 with limited character set) is maps 1:1 to a UTF-32, UTF-16 or UTF-8
1264 coded Unicode character. Character codes that cannot be represented as
1265 a single byte in UTF-8 (if the value is > 0x7F) use escape sequences
1266 that map to more than one 8-bit character.
1267
1268 If all operating systems used UTF-8, genisoimage would not need to
1269 recode characters in filenames. Unfortunately, Apple uses completely
1270 nonstandard codings and Microsoft uses a Unicode coding that is not
1271 compatible with the POSIX filename interface.
1272
1273 For all non-UTF-8-coded operating systems, the actual character that
1274 each byte represents depends on the character set or codepage (the name
1275 used by Microsoft) used by the local operating system — the characters
1276 in a character set will reflect the region or natural language set by
1277 the user.
1278
1279 Usually character codes 0x00-0x1f are control characters, codes
1280 0x20-0x7f are the 7-bit ASCII characters and (on PCs and Macs)
1281 0x80-0xff are used for other characters.
1282
1283 As there are a lot more than 256 characters/symbols in use, only a
1284 small subset are represented in a character set. Therefore the same
1285 character code may represent a different character in different charac‐
1286 ter sets. So a filename generated, say in central Europe, may not dis‐
1287 play the same character when viewed on a machine in, say eastern
1288 Europe.
1289
1290 To make matters more complicated, different operating systems use dif‐
1291 ferent character sets for the region or language. For example, the
1292 character code for `é' (small e with acute accent) may be character
1293 code 0x82 on a PC, code 0x8e on a Macintosh, code 0xe9 on a Unix system
1294 in western Europe, and code 0x000e9 in Unicode.
1295
1296 As long as not all operating systems and applications use the same
1297 character set as the basis for filenames, it may be necessary to spec‐
1298 ify which character set your filenames use in and which character set
1299 the filenames should appear on the CD.
1300
1301 There are four options to specify the character sets you want to use:
1302
1303 -input-charset
1304 Defines the local character set you are using on your host
1305 machine. Any character set conversions that take place will use
1306 this character set as the starting point. The default input
1307 character sets are cp437 on MS-DOS-based systems and iso8859-1
1308 on all other systems. If -J is given, the Unicode equivalents
1309 of the input character set will be used in the Joliet directory.
1310 -jcharset is the same as -input-charset -J.
1311
1312 -output-charset
1313 Defines the character set that will be used with for the Rock
1314 Ridge names on the CD. Defaults to the input character set.
1315
1316 -input-hfs-charset
1317 Defines the HFS character set used for HFS filenames decoded
1318 from any of the various Apple/Unix file formats. Only useful
1319 when used with -mac-name. See the HFS MACINTOSH FILENAMES for
1320 more information. Defaults to cp10000 (Mac Roman).
1321
1322 -output-hfs-charset
1323 Defines the HFS character set used to create HFS filenames from
1324 the input character set in use. In most cases this will be from
1325 the character set given with -input-charset. Defaults to the
1326 input HFS character set.
1327
1328 There are a number of character sets built in to genisoimage. To get a
1329 listing, use -input-charset help. This list doesn't include the
1330 charset derived from the current locale, if genisoimage is built with
1331 iconv support.
1332
1333 Additional character sets can be read from file for any of the charac‐
1334 ter set options by giving a filename as the argument to the options.
1335 The given file will only be read if its name does not match one of the
1336 built-in character sets.
1337
1338 The format of the character set files is the same as the mapping files
1339 available from http://www.unicode.org/Public/MAPPINGS. This format is:
1340
1341 Column #1 is the input byte code (in hex as 0xXX)
1342 Column #2 is the Unicode (in hex as 0xXXXX)
1343 The rest of the line is ignored.
1344
1345 Any blank line, line without two (or more) columns in the above format
1346 or comments lines (starting with the # character) are ignored without
1347 any warnings. Any missing input code is mapped to Unicode character
1348 0x0000.
1349
1350 Note that, while UTF-8 is supported, other Unicode encodings such as
1351 UCS-2/UTF-16 and UCS-4/UTF-32 are not, as POSIX operating systems can‐
1352 not handle them natively.
1353
1354 A 1:1 character set mapping can be defined by using the keyword default
1355 as the argument to any of the character set options. This is the behav‐
1356 iour of old versions of mkisofs.
1357
1358 The ISO9660 filenames generated from the input filenames are not con‐
1359 verted from the input character set. The ISO9660 character set is a
1360 very limited subset of the ASCII characters, so any conversion would be
1361 pointless.
1362
1363 Any character that genisoimage cannot convert will be replaced with a
1364 `_' character.
1365
1367 A Macintosh file has two properties associated with it which define
1368 which application created the file, the CREATOR and what data the file
1369 contains, the TYPE. Both are (exactly) 4 letter strings. Usually this
1370 allows a Macintosh user to double-click on a file and launch the cor‐
1371 rect application etc. The CREATOR and TYPE of a particular file can be
1372 found by using something like ResEdit (or similar) on a Macintosh.
1373
1374 The CREATOR and TYPE information is stored in all the various
1375 Apple/Unix encoded files. For other files it is possible to base the
1376 CREATOR and TYPE on the filename's extension using a mapping file (with
1377 -map) and/or using the magic number (usually a signature in the first
1378 few bytes) of a file (with -magic). If both these options are given,
1379 their order on the command line is significant. If -map is given
1380 first, a filename extension match is attempted before a magic number
1381 match. However, if -magic is given first, a magic number match is
1382 attempted before a filename extension match.
1383
1384 If a mapping or magic file is not used, or no match is found, the
1385 default CREATOR and TYPE for all regular files can be set by using
1386 entries in the .genisoimagerc file or using -hfs-creator and/or
1387 -hfs-type, otherwise the default CREATOR and TYPE are Unix and TEXT.
1388
1389 The format of the mapping file is the same afpfile format as used by
1390 aufs. This file has five columns for the extension, file translation,
1391 CREATOR, TYPE and Comment. Lines starting with the `#' character are
1392 comment lines and are ignored. An example file would be like:
1393
1394 # Example filename mapping file
1395 #
1396 # EXTN XLate CREATOR TYPE Comment
1397 .tif Raw '8BIM' 'TIFF' "Photoshop TIFF image"
1398 .hqx Ascii 'BnHq' 'TEXT' "BinHex file"
1399 .doc Raw 'MSWD' 'WDBN' "Word file"
1400 .mov Raw 'TVOD' 'MooV' "QuickTime Movie"
1401 * Ascii 'ttxt' 'TEXT' "Text file"
1402
1403 Where:
1404
1405 The first column EXTN defines the Unix filename extension to be
1406 mapped. The default mapping for any filename extension that
1407 doesn't match is defined with the `*' character.
1408
1409 The Xlate column defines the type of text translation between
1410 the Unix and Macintosh file it is ignored by genisoimage, but is
1411 kept to be compatible with aufs(1). Although genisoimage does
1412 not alter the contents of a file, if a binary file has its TYPE
1413 set as TEXT, it may be read incorrectly on a Macintosh. There‐
1414 fore a better choice for the default TYPE may be ????.
1415
1416 The CREATOR and TYPE keywords must be 4 characters long and
1417 enclosed in single quotes.
1418
1419 The comment field is enclosed in double quotes — it is ignored
1420 by genisoimage, but is kept to be compatible with aufs.
1421
1422 The format of the magic file is almost identical to the magic(5) file
1423 used by the file(1) command.
1424
1425 This file has four tab-separated columns for the byte offset, type,
1426 test and message. Lines starting with the `#' character are comment
1427 lines and are ignored. An example file would be like:
1428
1429 # Example magic file
1430 #
1431 # off type test message
1432 0 string GIF8 8BIM GIFf GIF image
1433 0 beshort 0xffd8 8BIM JPEG image data
1434 0 string SIT! SIT! SIT! StuffIt Archive
1435 0 string \037\235 LZIV ZIVU standard Unix compress
1436 0 string \037\213 GNUz ZIVU gzip compressed data
1437 0 string %! ASPS TEXT Postscript
1438 0 string \004%! ASPS TEXT PC Postscript with a ^D to start
1439 4 string moov txtt MooV QuickTime movie file (moov)
1440 4 string mdat txtt MooV QuickTime movie file (mdat)
1441
1442 The format of the file is described in magic(5). The only difference
1443 here is that for each entry in the magic file, the message for the ini‐
1444 tial offset must be be 4 characters for the CREATOR followed by 4 char‐
1445 acters for the TYPE — white space is optional between them. Any other
1446 characters on this line are ignored. Continuation lines (starting with
1447 a `>') are also ignored, i.e., only the initial offset lines are used.
1448
1449 Using -magic may significantly increase processing time as each file
1450 has to opened and read to find its magic number.
1451
1452 In summary, for all files, the default CREATOR is Unix and the default
1453 TYPE is TEXT. These can be changed by using entries in the .genisoim‐
1454 agerc file or by using -hfs-creator and/or -hfs-type.
1455
1456 If the a file is in one of the known Apple/Unix formats (and the format
1457 has been selected), the CREATOR and TYPE are taken from the values
1458 stored in the Apple/Unix file.
1459
1460 Other files can have their CREATOR and TYPE set from their filename
1461 extension (with -map), or their magic number (with -magic). If the
1462 default match is used in the mapping file, these values override the
1463 default CREATOR and TYPE.
1464
1465 A full CREATOR/TYPE database can be found at
1466 http://www.angelfire.com/il/szekely/.
1467
1469 Macintosh files have two parts called the Data and Resource fork.
1470 Either may be empty. Unix (and many other OSs) can only cope with files
1471 having one part (or fork). To add to this, Macintosh files have a num‐
1472 ber of attributes associated with them — probably the most important
1473 are the TYPE and CREATOR. Again, Unix has no concept of these types of
1474 attributes.
1475
1476 E.g., a Macintosh file may be a JPEG image where the image is stored in
1477 the Data fork and a desktop thumbnail stored in the Resource fork. It
1478 is usually the information in the data fork that is useful across plat‐
1479 forms.
1480
1481 Therefore to store a Macintosh file on a Unix filesystem, a way has to
1482 be found to cope with the two forks and the extra attributes (which are
1483 referred to as the Finder info). Unfortunately, it seems that every
1484 software package that stores Macintosh files on Unix has chosen a com‐
1485 pletely different storage method.
1486
1487 The Apple/Unix formats that genisoimage (partially) supports are:
1488
1489 CAP AUFS format
1490 Data fork stored in a file. Resource fork in subdirectory
1491 .resource with same filename as data fork. Finder info in subdi‐
1492 rectory .finderinfo with same filename.
1493
1494 AppleDouble/Netatalk
1495 Data fork stored in a file. Resource fork stored in a file with
1496 same name prefixed with `%'. Finder info also stored in same `%'
1497 file. Netatalk uses the same format, but the resource
1498 fork/Finder info stored in subdirectory .AppleDouble with same
1499 filename as data fork.
1500
1501 AppleSingle
1502 Data structures similar to above, except both forks and Finder
1503 info are stored in one file.
1504
1505 Helios EtherShare
1506 Data fork stored in a file. Resource fork and Finder info
1507 together in subdirectory .rsrc with same filename as data fork.
1508
1509 IPT UShare
1510 Like the EtherShare format, but the Finder info is stored
1511 slightly differently.
1512
1513 MacBinary
1514 Both forks and Finder info stored in one file.
1515
1516 Apple PC Exchange
1517 Used by Macintoshes to store Apple files on DOS (FAT) disks.
1518 Data fork stored in a file. Resource fork in subdirectory
1519 resource.frk (or RESOURCE.FRK). Finder info as one record in
1520 file finder.dat (or FINDER.DAT). Separate finder.dat for each
1521 data fork directory.
1522
1523 Note: genisoimage needs to know the native FAT cluster size of
1524 the disk that the PC Exchange files are on (or have been copied
1525 from). This size is given by -cluster-size. The cluster or
1526 allocation size can be found by using the DOS utility chkdsk.
1527
1528 May not work with PC Exchange v2.2 or higher files (available
1529 with MacOS 8.1). DOS media containing PC Exchange files should
1530 be mounted as type msdos (not vfat) when using Linux.
1531
1532 SGI/XINET
1533 Used by SGI machines when they mount HFS disks. Data fork stored
1534 in a file. Resource fork in subdirectory .HSResource with same
1535 filename. Finder info as one record in file .HSancillary. Sep‐
1536 arate .HSancillary for each data fork directory.
1537
1538 Thursby Software Systems DAVE
1539 Allows Macintoshes to store Apple files on SMB servers. Data
1540 fork stored in a file. Resource fork in subdirectory
1541 resource.frk. Uses the AppleDouble format to store resource
1542 fork.
1543
1544 Services for Macintosh
1545 Format of files stored by NT Servers on NTFS filesystems. Data
1546 fork is stored as filename. Resource fork stored as a NTFS
1547 stream called filename:AFP_Resource. The Finder info is stored
1548 as a NTFS stream called filename:Afp_AfpInfo. NTFS streams are
1549 normally invisible to the user.
1550
1551 Warning: genisoimage only partially supports the SFM format. If
1552 an HFS file or folder stored on the NT server contains an ille‐
1553 gal NT character in its name, NT converts these characters to
1554 Private Use Unicode characters. The characters are: " * / < > ?
1555 \ | and a space or period if it is the last character of the
1556 filename, character codes 0x01 to 0x1f (control characters) and
1557 Apple's apple logo.
1558
1559 Unfortunately, these private Unicode characters are not readable
1560 by the genisoimage NT executable. Therefore any file or direc‐
1561 tory name containing these characters will be ignored — includ‐
1562 ing the contents of any such directory.
1563
1564 Mac OS X AppleDouble
1565 When HFS/HFS+ files are copied or saved by Mac OS X on to a non-
1566 HFS filesystem (e.g. UFS, NFS etc.), the files are stored in
1567 AppleDouble format. Data fork stored in a file. Resource fork
1568 stored in a file with same name prefixed with `._'. Finder info
1569 also stored in same `._' file.
1570
1571 Mac OS X HFS (Alpha)
1572 Not really an Apple/Unix encoding, but actual HFS/HFS+ files on
1573 a Mac OS X system. Data fork stored in a file. Resource fork
1574 stored in a pseudo file with the same name with the suffix
1575 /rsrc. The Finder info is only available via a Mac OS X library
1576 call.
1577
1578 See also README.macosx.
1579
1580 Only works when used on Mac OS X.
1581
1582 If a file is found with a zero length resource fork and empty
1583 finderinfo, it is assumed not to have any Apple/Unix encoding —
1584 therefore a TYPE and CREATOR can be set using other methods.
1585
1586 genisoimage will attempt to set the CREATOR, TYPE, date and possibly
1587 other flags from the finder info. Additionally, if it exists, the Mac‐
1588 intosh filename is set from the finder info, otherwise the Macintosh
1589 name is based on the Unix filename — see the HFS MACINTOSH FILENAMES
1590 section below.
1591
1592 When using -apple, the TYPE and CREATOR are stored in the optional Sys‐
1593 tem Use or SUSP field in the ISO9660 Directory Record — in much the
1594 same way as the Rock Ridge attributes are. In fact to make life easy,
1595 the Apple extensions are added at the beginning of the existing Rock
1596 Ridge attributes (i.e., to get the Apple extensions you get the Rock
1597 Ridge extensions as well).
1598
1599 The Apple extensions require the resource fork to be stored as an
1600 ISO9660 associated file. This is just like any normal file stored in
1601 the ISO9660 filesystem except that the associated file flag is set in
1602 the Directory Record (bit 2). This file has the same name as the data
1603 fork (the file seen by non-Apple machines). Associated files are nor‐
1604 mally ignored by other OSs
1605
1606 When using -hfs, the TYPE and CREATOR plus other finder info, are
1607 stored in a separate HFS directory, not visible on the ISO9660 volume.
1608 The HFS directory references the same data and resource fork files
1609 described above.
1610
1611 In most cases, it is better to use -hfs instead of -apple, as the lat‐
1612 ter imposes the limited ISO9660 characters allowed in filenames. How‐
1613 ever, the Apple extensions do give the advantage that the files are
1614 packed on the disk more efficiently and it may be possible to fit more
1615 files on a CD.
1616
1618 Where possible, the HFS filename that is stored with an Apple/Unix file
1619 is used for the HFS part of the CD. However, not all the Apple/Unix
1620 encodings store the HFS filename with the finderinfo. In these cases,
1621 the Unix filename is used — with escaped special characters. Special
1622 characters include `/' and characters with codes over 127.
1623
1624 AUFS escapes these characters by using `:' followed by the character
1625 code as two hex digits. Netatalk and EtherShare have a similar scheme,
1626 but uses `%' instead of a `:'.
1627
1628 If genisoimage cannot find an HFS filename, it uses the Unix name, with
1629 any %xx or :xx characters (xx are two hex digits) converted to a single
1630 character code. If xx are not hex digits ([0-9a-fA-F]), they are left
1631 alone — although any remaining `:' is converted to `%', as `:' is the
1632 HFS directory separator. Care must be taken, as an ordinary Unix file
1633 with %xx or :xx will also be converted. e.g.
1634
1635 This:2fFile converted to This/File
1636
1637 This:File converted to This%File
1638
1639 This:t7File converted to This%t7File
1640
1641 Although HFS filenames appear to support uppercase and lowercase let‐
1642 ters, the filesystem is case-insensitive, i.e., the filenames aBc and
1643 AbC are the same. If a file is found in a directory with the same HFS
1644 name, genisoimage will attempt to make a unique name by adding `_'
1645 characters to one of the filenames.
1646
1647 If an HFS filename exists for a file, genisoimage can use this name as
1648 the starting point for the ISO9660, Joliet and Rock Ridge filenames
1649 using -mac-name. Normal Unix files without an HFS name will still use
1650 their Unix name. e.g.
1651
1652 If a MacBinary (or PC Exchange) file is stored as someimage.gif.bin on
1653 the Unix filesystem, but contains a HFS file called someimage.gif, this
1654 is the name that would appear on the HFS part of the CD. However, as
1655 genisoimage uses the Unix name as the starting point for the other
1656 names, the ISO9660 name generated will probably be SOMEIMAG.BIN and the
1657 Joliet/Rock Ridge would be someimage.gif.bin. This option will use the
1658 HFS filename as the starting point and the ISO9660 name will probably
1659 be SOMEIMAG.GIF and the Joliet/Rock Ridge would be someimage.gif.
1660
1661 -mac-name will not currently work with -T — the Unix name will be used
1662 in the TRANS.TBL file, not the Macintosh name.
1663
1664 The character set used to convert any HFS filename to a Joliet/Rock
1665 Ridge filename defaults to cp10000 (Mac Roman). The character set used
1666 can be specified using -input-hfs-charset. Other built-in HFS charac‐
1667 ter sets are: cp10006 (MacGreek), cp10007 (MacCyrillic), cp10029
1668 (MacLatin2), cp10079 (MacIcelandandic) and cp10081 (MacTurkish).
1669
1670 Note: the character codes used by HFS filenames taken from the various
1671 Apple/Unix formats will not be converted as they are assumed to be in
1672 the correct Apple character set. Only the Joliet/Rock Ridge names
1673 derived from the HFS filenames will be converted.
1674
1675 The existing genisoimage code will filter out any illegal characters
1676 for the ISO9660 and Joliet filenames, but as genisoimage expects to be
1677 dealing directly with Unix names, it leaves the Rock Ridge names as is.
1678 But as `/' is a legal HFS filename character, -mac-name converts `/' to
1679 a `_' in Rock Ridge filenames.
1680
1681 If the Apple extensions are used, only the ISO9660 filenames will
1682 appear on the Macintosh. However, as the Macintosh ISO9660 drivers can
1683 use Level 2 filenames, you can use options like -allow-multidot without
1684 problems on a Macintosh — still take care over the names, for example
1685 this.file.name will be converted to THIS.FILE i.e. only have one `.',
1686 also filename abcdefgh will be seen as ABCDEFGH but abcdefghi will be
1687 seen as ABCDEFGHI. i.e. with a `.' at the end — don't know if this is
1688 a Macintosh problem or a genisoimage/mkhybrid problem. All filenames
1689 will be in uppercase when viewed on a Macintosh. Of course, DOS/Win3.X
1690 machines will not be able to see Level 2 filenames...
1691
1693 To give a HFS CD a custom icon, make sure the root (top level) folder
1694 includes a standard Macintosh volume icon file. To give a volume a cus‐
1695 tom icon on a Macintosh, an icon has to be pasted over the volume's
1696 icon in the "Get Info" box of the volume. This creates an invisible
1697 file called Icon\r (`\r' is the carriage return character) in the root
1698 folder.
1699
1700 A custom folder icon is very similar — an invisible file called Icon\r
1701 exists in the folder itself.
1702
1703 Probably the easiest way to create a custom icon that genisoimage can
1704 use is to format a blank HFS floppy disk on a Mac and paste an icon to
1705 its "Get Info" box. If using Linux with the HFS module installed, mount
1706 the floppy:
1707
1708 mount -t hfs /dev/fd0 /mnt/floppy
1709
1710 The floppy will be mounted as a CAP filesystem by default. Then run
1711 genisoimage using something like:
1712
1713 genisoimage --cap -o output source_dir /mnt/floppy
1714
1715 If you are not using Linux, you can use hfsutils to copy the icon file
1716 from the floppy. However, care has to be taken, as the icon file con‐
1717 tains a control character. For example:
1718
1719 hmount /dev/fd0
1720 hdir -a
1721 hcopy -m Icon^V^M icon_dir/icon
1722
1723 Where `^V^M' is control-V followed by control-M. Then run genisoimage
1724 by using something like:
1725
1726 genisoimage --macbin -o output source_dir icon_dir
1727
1728 The procedure for creating/using custom folder icons is very similar —
1729 paste an icon to folder's "Get Info" box and transfer the resulting
1730 Icon\r file to the relevant directory in the genisoimage source tree.
1731
1732 You may want to hide the icon files from the ISO9660 and Joliet trees.
1733
1734 To give a custom icon to a Joliet CD, follow the instructions found at
1735 http://www.cdrfaq.org/faq03.html#S3-21-1.
1736
1738 It may be possible to make the hybrid CD bootable on a Macintosh.
1739
1740 A bootable HFS CD requires an Apple CD-ROM (or compatible) driver, a
1741 bootable HFS partition and the necessary System, Finder, etc. files.
1742
1743 A driver can be obtained from any other Macintosh bootable CD-ROM using
1744 the apple_driver utility. This file can then be used with
1745 -boot-hfs-file.
1746
1747 The HFS partition (i.e. the hybrid disk in our case) must contain a
1748 suitable System Folder, again from another CD-ROM or disk.
1749
1750 For a partition to be bootable, it must have its boot block set. The
1751 boot block is in the first two blocks of a partition. For a non-
1752 bootable partition the boot block is full of zeros. Normally, when a
1753 System file is copied to partition on a Macintosh disk, the boot block
1754 is filled with a number of required settings — unfortunately I don't
1755 know the full spec for the boot block, so I'm guessing that the follow‐
1756 ing will work.
1757
1758 Therefore, the utility apple_driver also extracts the boot block from
1759 the first HFS partition it finds on the given CD-ROM and this is used
1760 for the HFS partition created by genisoimage.
1761
1762 Please note: By using a driver from an Apple CD and copying Apple soft‐
1763 ware to your CD, you become liable to obey Apple Computer, Inc. Soft‐
1764 ware License Agreements.
1765
1767 When -boot-info-table is given, genisoimage will modify the boot file
1768 specified by -b by inserting a 56-byte boot information table at offset
1769 8 in the file. This modification is done in the source filesystem, so
1770 make sure you use a copy if this file is not easily recreated! This
1771 file contains pointers which may not be easily or reliably obtained at
1772 boot time.
1773
1774 The format of this table is as follows; all integers are in section
1775 7.3.1 ("little endian") format.
1776
1777 Offset Name Size Meaning
1778 8 bi_pvd 4 bytes LBA of primary volume descriptor
1779 12 bi_file 4 bytes LBA of boot file
1780 16 bi_length 4 bytes Boot file length in bytes
1781 20 bi_csum 4 bytes 32-bit checksum
1782 24 bi_reserved 40 bytes Reserved
1783
1784 The 32-bit checksum is the sum of all the 32-bit words in the
1785 boot file starting at byte offset 64. All linear block
1786 addresses (LBAs) are given in CD sectors (normally 2048 bytes).
1787
1789 To make a bootable CD for HPPA, at the very least a boot loader file
1790 (-hppa-bootloader), a kernel image file (32-bit, 64-bit, or both,
1791 depending on hardware) and a boot command line (-hppa-cmdline) must be
1792 specified. Some systems can boot either a 32- or a 64-bit kernel, and
1793 the firmware will choose one if both are present. Optionally, a
1794 ramdisk can be used for the root filesystem using -hppa-cmdline.
1795
1797 Jigdo is a tool to help in the distribution of large files like CD and
1798 DVD images; see http://atterer.org/jigdo/ for more details. Debian CDs
1799 and DVD ISO images are published on the web in jigdo format to allow
1800 end users to download them more efficiently.
1801
1802 To create jigdo and template files alongside the ISO image from
1803 genisoimage, you must first generate a list of the files that will be
1804 used, in the following format:
1805
1806 MD5sum File size Path
1807 32 chars 12 chars to end of line
1808
1809 The MD5sum must be written in standard hexadecimal notation, the file
1810 size must list the size of the file in bytes, and the path must list
1811 the absolute path to the file. For example:
1812
1813 00006dcd58ff0756c36d2efae21be376 14736 /mirror/debian/file1
1814 000635c69b254a1be8badcec3a8d05c1 211822 /mirror/debian/file2
1815 00083436a3899a09633fc1026ef1e66e 22762 /mirror/debian/file3
1816
1817 Once you have this file, call genisoimage with all of your normal com‐
1818 mand-line parameters. Specify the output filenames for the jigdo and
1819 template files using -jigdo-jigdo and -jigdo-template, and pass in the
1820 location of your MD5 list with -md5-list.
1821
1822 If there are files that you do NOT want to be added into the jigdo file
1823 (e.g. if they are likely to change often), specify them using
1824 -jigdo-exclude. If you want to verify some of the files as they are
1825 written into the image, specify them using -jigdo-force-md5. If any
1826 files don't match, genisoimage will then abort. Both of these options
1827 take regular expressions as input. It is possible to restrict the set
1828 of files that will be used further based on size — use the
1829 -jigdo-min-file-size option.
1830
1831 Finally, the jigdo code needs to know how to map the files it is given
1832 onto a mirror-style configuration. Specify how to map paths using
1833 -jigdo-map. Using Debian=/mirror/debian will cause all paths starting
1834 with /mirror/debian to be mapped to Debian:<file> in the output jigdo
1835 file.
1836
1838 To create a vanilla ISO9660 filesystem image in the file cd.iso, where
1839 the directory cd_dir will become the root directory of the CD, call:
1840
1841 % genisoimage -o cd.iso cd_dir
1842
1843 To create a CD with Rock Ridge extensions of the source directory
1844 cd_dir:
1845
1846 % genisoimage -o cd.iso -R cd_dir
1847
1848 To create a CD with Rock Ridge extensions of the source directory
1849 cd_dir where all files have at least read permission and all files are
1850 owned by root, call:
1851
1852 % genisoimage -o cd.iso -r cd_dir
1853
1854 To write a tar archive directly to a CD that will later contain a sim‐
1855 ple ISO9660 filesystem with the tar archive call:
1856
1857 % tar cf - . | genisoimage -stream-media-size 333000 | \
1858 wodim dev=b,t,l -dao tsize=333000s -
1859
1860 To create a HFS hybrid CD with the Joliet and Rock Ridge extensions of
1861 the source directory cd_dir:
1862
1863 % genisoimage -o cd.iso -R -J -hfs cd_dir
1864
1865 To create a HFS hybrid CD from the source directory cd_dir that con‐
1866 tains Netatalk Apple/Unix files:
1867
1868 % genisoimage -o cd.iso --netatalk cd_dir
1869
1870 To create a HFS hybrid CD from the source directory cd_dir, giving all
1871 files CREATOR and TYPES based on just their filename extensions listed
1872 in the file "mapping".:
1873
1874 % genisoimage -o cd.iso -map mapping cd_dir
1875
1876 To create a CD with the Apple Extensions to ISO9660, from the source
1877 directories cd_dir and another_dir. Files in all the known Apple/Unix
1878 format are decoded and any other files are given CREATOR and TYPE based
1879 on their magic number given in the file magic:
1880
1881 % genisoimage -o cd.iso -apple -magic magic -probe \
1882 cd_dir another_dir
1883
1884 The following example puts different files on the CD that all have the
1885 name README, but have different contents when seen as a ISO9660/Rock
1886 Ridge, Joliet or HFS CD.
1887
1888 Current directory contains:
1889
1890 % ls -F
1891 README.hfs README.joliet README.Unix cd_dir/
1892
1893 The following command puts the contents of the directory cd_dir on the
1894 CD along with the three README files — but only one will be seen from
1895 each of the three filesystems:
1896
1897 % genisoimage -o cd.iso -hfs -J -r -graft-points \
1898 -hide README.hfs -hide README.joliet \
1899 -hide-joliet README.hfs -hide-joliet README.Unix \
1900 -hide-hfs README.joliet -hide-hfs README.Unix \
1901 README=README.hfs README=README.joliet \
1902 README=README.Unix cd_dir
1903
1904 i.e. the file README.hfs will be seen as README on the HFS CD and the
1905 other two README files will be hidden. Similarly for the Joliet and
1906 ISO9660/Rock Ridge CD.
1907
1908 There are probably all sorts of strange results possible with combina‐
1909 tions of the hide options ...
1910
1912 genisoimage may safely be installed suid root. This may be needed to
1913 allow genisoimage to read the previous session when creating a multi‐
1914 session image.
1915
1916 If genisoimage is creating a filesystem image with Rock Ridge
1917 attributes and the directory nesting level of the source directory tree
1918 is too much for ISO9660, genisoimage will do deep directory relocation.
1919 This results in a directory called RR_MOVED in the root directory of
1920 the CD. You cannot avoid this directory.
1921
1922 Many boot code options for different platforms are mutualy exclusive
1923 because the boot blocks cannot coexist, ie. different platforms share
1924 the same data locations in the image. See
1925 http://lists.debian.org/debian-cd/2006/12/msg00109.html for details.
1926
1928 Any files that have hard links to files not in the tree being copied to
1929 the ISO9660 filesystem will have an incorrect file reference count.
1930
1931 Does not check for SUSP record(s) in `.' entry of the root directory to
1932 verify the existence of Rock Ridge enhancements. This problem is
1933 present when reading old sessions while adding data in multisession
1934 mode.
1935
1936 Does not properly read relocated directories in multisession mode when
1937 adding data. Any relocated deep directory is lost if the new session
1938 does not include the deep directory.
1939
1940 Does not re-use RR_MOVED when doing multisession from TRANS.TBL.
1941
1942 Does not create whole_name entry for RR_MOVED in multisession mode.
1943
1944 There may be other bugs. Please, report them to the maintainers.
1945
1947 I have had to make several assumptions on how I expect the modified
1948 libhfs routines to work, however there may be situations that either I
1949 haven't thought of, or come across when these assumptions fail. There‐
1950 fore I can't guarantee that genisoimage will work as expected (although
1951 I haven't had a major problem yet). Most of the HFS features work fine,
1952 but some are not fully tested. These are marked as Alpha above.
1953
1954 Although HFS filenames appear to support uppercase and lowercase let‐
1955 ters, the filesystem is case-insensitive, i.e., the filenames aBc and
1956 AbC are the same. If a file is found in a directory with the same HFS
1957 name, genisoimage will attempt to make a unique name by adding `_'
1958 characters to one of the filenames.
1959
1960 HFS file/directory names that share the first 31 characters have `_N'
1961 (a decimal number) substituted for the last few characters to generate
1962 unique names.
1963
1964 Care must be taken when "grafting" Apple/Unix files or directories (see
1965 above for the method and syntax involved). It is not possible to use a
1966 new name for an Apple/Unix encoded file/directory. e.g. If a Apple/Unix
1967 encoded file called oldname is to added to the CD, you cannot use the
1968 command line:
1969
1970 genisoimage -o output.raw -hfs -graft-points newname=oldname
1971 cd_dir
1972
1973 genisoimage will be unable to decode oldname. However, you can graft
1974 Apple/Unix encoded files or directories as long as you do not attempt
1975 to give them new names as above.
1976
1977 When creating an HFS volume with the multisession options, -M and -C,
1978 only files in the last session will be in the HFS volume. i.e.
1979 genisoimage cannot add existing files from previous sessions to the HFS
1980 volume.
1981
1982 However, if each session is created with -part, each session will
1983 appear as separate volumes when mounted on a Mac. In this case, it is
1984 worth using -V or -hfs-volid to give each session a unique volume name,
1985 otherwise each "volume" will appear on the Desktop with the same name.
1986
1987 Symbolic links (as with all other non-regular files) are not added to
1988 the HFS directory.
1989
1990 Hybrid volumes may be larger than pure ISO9660 volumes containing the
1991 same data. In some cases (e.g. DVD sized volumes) the difference can be
1992 significant. As an HFS volume gets bigger, so does the allocation block
1993 size (the smallest amount of space a file can occupy). For a 650MB CD,
1994 the allocation block is 10kB, for a 4.7GB DVD it will be about 70kB.
1995
1996 The maximum number of files in an HFS volume is about 65500 — although
1997 the real limit will be somewhat less than this.
1998
1999 The resulting hybrid volume can be accessed on a Unix machine by using
2000 the hfsutils routines. However, no changes can be made to the volume as
2001 it is set as locked. The option -hfs-unlock will create an output
2002 image that is unlocked — however no changes should be made to the con‐
2003 tents of the volume (unless you really know what you are doing) as it's
2004 not a "real" HFS volume.
2005
2006 -mac-name will not currently work with -T — the Unix name will be used
2007 in the TRANS.TBL file, not the Macintosh name.
2008
2009 Although genisoimage does not alter the contents of a file, if a binary
2010 file has its TYPE set as TEXT, it may be read incorrectly on a Macin‐
2011 tosh. Therefore a better choice for the default TYPE may be ????.
2012
2013 -mac-boot-file may not work at all...
2014
2015 May not work with PC Exchange v2.2 or higher files (available with Mac‐
2016 OS 8.1). DOS media containing PC Exchange files should be mounted as
2017 type msdos (not vfat) when using Linux.
2018
2019 The SFM format is only partially supported — see HFS MACINTOSH FILE
2020 FORMATS section above.
2021
2022 It is not possible to use -sparc-boot or -generic-boot with
2023 -boot-hfs-file or -prep-boot.
2024
2025 genisoimage should be able to create HFS hybrid images over 4Gb,
2026 although this has not been fully tested.
2027
2029 genisoimagerc(5), wodim(1), mkzftree(8), magic(5).
2030
2032 genisoimage is derived from mkisofs from the cdrtools 2.01.01a08 pack‐
2033 age from May 2006 (with few updates extracted from cdrtools 2.01.01a24
2034 from March 2007) from .IR http://cdrecord.berlios.de/ , but is now part
2035 of the cdrkit suite, maintained by Joerg Jaspert, Eduard Bloch, Steve
2036 McIntyre, Peter Samuelson, Christian Fromme, Ben Hutchings, and other
2037 contributors. The maintainers can be contacted at debburn-
2038 devel@lists.alioth.debian.org, or see the cdrkit project web site at
2039 http://www.cdrkit.org/.
2040
2041 Eric Youngdale wrote the first versions (1993–1998) of mkisofs. Jörg
2042 Schilling wrote the SCSI transport library and its interface, and has
2043 maintained mkisofs since 1999. James Pearson wrote the HFS hybrid
2044 code, using libhfs by Robert Leslie. Pearson, Schilling, Jungshik Shin
2045 and Jaakko Heinonen contributed to the character set conversion code.
2046 The cdrkit maintainers have maintained genisoimage since 2006.
2047
2048 Copyright 1993-1998 by Yggdrasil Computing, Inc.
2049 Copyright 1996-1997 by Robert Leslie
2050 Copyright 1997-2001 by James Pearson
2051 Copyright 1999-2006 by Jörg Schilling
2052 Copyright 2007 by Jörg Schilling (originating few updates)
2053 Copyright 2002-2003 by Jungshik Shin
2054 Copyright 2003 by Jaakko Heinonen
2055 Copyright 2006 by the Cdrkit maintainers
2056
2057 If you want to take part in the development of genisoimage, you may
2058 join the cdrkit developer mailing list by following the instructions on
2059 http://alioth.debian.org/mail/?group_id=31006. The email address of
2060 the list is debburn-devel@lists.alioth.debian.org. This is also the
2061 address for user support questions. Note that cdrkit and cdrtools are
2062 not affiliated.
2063
2065 UNIX is a registered trademark of The Open Group in the US and other
2066 countries.
2067
2068
2069
2070 13 Dec 2006 GENISOIMAGE(1)