• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1                               ISOLINUX
2
3       A bootloader for Linux using ISO 9660/El Torito CD-ROMs
4
5       Copyright 1994-2008 H. Peter Anvin - All Rights Reserved
6
7This program is provided under the terms of the GNU General Public
8License, version 2 or, at your option, any later version.  There is no
9warranty, neither expressed nor implied, to the function of this
10program.  Please see the included file COPYING for details.
11
12----------------------------------------------------------------------
13
14ISOLINUX is a boot loader for Linux/i386 that operates off ISO 9660/El
15Torito CD-ROMs in "no emulation" mode.  This avoids the need to create
16an "emulation disk image" with limited space (for "floppy emulation")
17or compatibility problems (for "hard disk emulation".)
18
19This documentation isn't here yet, but here is enough that you should
20be able to test it out:
21
22Make sure you have a recent enough version of mkisofs.  I recommend
23mkisofs 1.13 (distributed with cdrecord 1.9), but 1.12 might work as
24well (not tested.)
25
26To create an image, create a directory called "isolinux" (or, if you
27prefer, "boot/isolinux") underneath the root directory of your ISO
28image master file tree.  Copy isolinux.bin, a config file called
29"isolinux.cfg" (see syslinux.txt for details on the configuration
30file), and all necessary files (kernels, initrd, display files, etc.)
31into this directory, then use the following command to create your ISO
32image (add additional options as appropriate, such as -J or -R):
33
34	mkisofs -o <isoimage> \
35		-b isolinux/isolinux.bin -c isolinux/boot.cat \
36		-no-emul-boot -boot-load-size 4 -boot-info-table \
37		<root-of-iso-tree>
38
39(If you named the directory boot/isolinux that should of course be
40-b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat.)
41
42ISOLINUX resolves pathnames the following way:
43
44- A pathname consists of names separated by slashes, Unix-style.
45- A leading / means it searches from the root directory; otherwise the
46  search is from the isolinux directory (think of this as the "current
47  directory".)
48- . and .. in pathname searches are not supported.
49- The maximum length of any pathname is 255 characters.
50
51Note that ISOLINUX only uses the "plain" ISO 9660 filenames, i.e. it
52does not support Rock Ridge or Joliet filenames.  It can still be used
53on a disk which uses Rock Ridge and/or Joliet extensions, of course.
54Under Linux, you can verify the plain filenames by mounting with the
55"-o norock,nojoliet" option to the mount command.  Note, however, that
56ISOLINUX does support "long" (level 2) ISO 9660 plain filenames, so if
57compatibility with short-names-only operating systems like MS-DOS is
58not an issue, you can use the "-l" or "-iso-level 2" option to mkisofs
59to generate long (up to 31 characters) plain filenames.
60
61ISOLINUX does not support discontiguous files, interleaved mode, or
62logical block and sector sizes other than 2048.  This should normally
63not be a problem.
64
65ISOLINUX is by default built in two versions, one version with extra
66debugging messages enabled.  If you are having problems with ISOLINUX,
67I would greatly appreciate if you could try out the debugging version
68(isolinux-debug.bin) and let me know what it reports.  The debugging
69version does not include hybrid mode support (see below.)
70
71
72      ++++ NOTE ON THE CONFIG FILE DIRECTORY ++++
73
74ISOLINUX will search for the config file directory in the order
75/boot/isolinux, /isolinux, /.  The first directory that exists is
76used, even if it contains no files.  Therefore, please make sure that
77these directories don't exist if you don't want ISOLINUX to use them.
78
79
80      ++++ HYBRID CD-ROM/HARD DISK MODE ++++
81
82Starting in version 3.72, ISOLINUX supports a "hybrid mode" which can
83be booted from either CD-ROM or from a device which BIOS considers a
84hard disk or ZIP disk, e.g. a USB key or similar.
85
86To enable this mode, the .iso image should be postprocessed with the
87"isohybrid" script from the utils directory:
88
89	isohybrid filename.iso
90
91This script creates the necessary additional information to be able to
92boot in hybrid mode.  It also pads out the image to an even multiple
93of 1 MB.
94
95This image can then be copied using any raw disk writing tool (on Unix
96systems, typically "dd" or "cat") to a USB disk, or written to a
97CD-ROM using standard CD burning tools.
98
99The ISO 9660 filesystem is encapsulated in a partition (which starts
100at offset zero, which may confuse some systems.)  This makes it
101possible for the operating system, once booted, to use the remainder
102of the device for persistent storage by creating a second partition.
103