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