ISO 9660

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
Line 4: Line 4:
 
|extensions={{ext|iso}}, {{ext|cdr}}
 
|extensions={{ext|iso}}, {{ext|cdr}}
 
|mimetypes={{mimetype|application/x-iso9660-image}}
 
|mimetypes={{mimetype|application/x-iso9660-image}}
|kaitai struct=iso_9660
+
|kaitai struct=iso9660
 
}}
 
}}
 
'''ISO 9660''' is a read-only [[filesystem]] often used on [[CD-ROM|CD-ROMs]]. It is also common to encounter files containing an [[ISO image|image]] of an ISO 9660 filesystem.
 
'''ISO 9660''' is a read-only [[filesystem]] often used on [[CD-ROM|CD-ROMs]]. It is also common to encounter files containing an [[ISO image|image]] of an ISO 9660 filesystem.
  
 
== Format details ==
 
== Format details ==
The standard specifies a very limited filename format. At the strictest interchange level, it only allows DOS-style "8.3" names, uppercase only. At less strict levels, filenames can be up to 31 characters. Several extensions, mainly [[Rock Ridge]] and [[Joliet]], were developed to mitigate these limitations.
+
The standard specifies a very limited filename format. At its strictest interchange level, it only allows DOS-style "8.3" names, uppercase only. At less strict levels, filenames can be up to 31 characters. Several extensions, mainly [[Rock Ridge]] and [[Joliet]], were developed to mitigate these limitations.
  
 
The filenames also have a VMS-style version number, so sometimes they are shown with a ";1" suffix.
 
The filenames also have a VMS-style version number, so sometimes they are shown with a ";1" suffix.
Line 16: Line 16:
  
 
== Identification ==
 
== Identification ==
Usually, the ASCII string "<code>CD001</code>" appears at offset 32769.
+
Usually, the ASCII string "{{magic|CD001}}>" appears at offset 32769.
  
 
The first 32768 bytes are not used. Be aware that hybrid filesystems are possible. Just because something is a valid ISO 9660 image, doesn't mean it can't also be a valid file of some other type.
 
The first 32768 bytes are not used. Be aware that hybrid filesystems are possible. Just because something is a valid ISO 9660 image, doesn't mean it can't also be a valid file of some other type.
Line 33: Line 33:
 
=== Joliet ===
 
=== Joliet ===
 
Main article: [[Joliet]]
 
Main article: [[Joliet]]
 +
 +
=== El Torito ===
 +
Main article: [[El Torito]]
  
 
=== CD-ROM XA ===
 
=== CD-ROM XA ===
Line 47: Line 50:
  
 
=== zisofs extensions ===
 
=== zisofs extensions ===
* [https://dev.lovelyhq.com/libburnia/web/wikis/zisofs zisofs "ZF" extension]
+
Main article: [[zisofs]]
  
 
=== RISC OS extensions ===
 
=== RISC OS extensions ===
Line 57: Line 60:
 
== See also ==
 
== See also ==
 
* [[ISO image]]
 
* [[ISO image]]
* [[Universal Disk Format]] (UDF) - The successor to ISO 9660
+
* [[Universal Disk Format]] (UDF) - A successor to ISO 9660
 +
* Hybrids of [[Apple Partition Map]] and ISO 9660 are common.
 +
* See [[Disk Image Formats#Optical Disc Image Formats]] for formats that might contain this format.
  
 
== Specifications ==
 
== Specifications ==

Revision as of 20:01, 1 February 2019

File Format
Name ISO 9660
Ontology
Extension(s) .iso, .cdr
MIME Type(s) application/x-iso9660-image
Kaitai Struct Spec iso9660.ksy

ISO 9660 is a read-only filesystem often used on CD-ROMs. It is also common to encounter files containing an image of an ISO 9660 filesystem.

Contents

Format details

The standard specifies a very limited filename format. At its strictest interchange level, it only allows DOS-style "8.3" names, uppercase only. At less strict levels, filenames can be up to 31 characters. Several extensions, mainly Rock Ridge and Joliet, were developed to mitigate these limitations.

The filenames also have a VMS-style version number, so sometimes they are shown with a ";1" suffix.

The size of a file is limited to 4GB (2GB in some implementations). This is irrelevant with respect to CD-ROMs, because of their small capacity, but it is a reason to avoid using ISO 9660 on DVD-ROMs and other media. (A feature called "multiple extents" makes larger files possible, but support for it may be limited.)

Identification

Usually, the ASCII string "CD001>" appears at offset 32769.

The first 32768 bytes are not used. Be aware that hybrid filesystems are possible. Just because something is a valid ISO 9660 image, doesn't mean it can't also be a valid file of some other type.

Extensions

Some extensions to ISO 9660 are listed here.

See also: Wikipedia:Category:ISO 9660 extensions

SUSP

Main article: System Use Sharing Protocol

Rock Ridge

Main article: Rock Ridge

Joliet

Main article: Joliet

El Torito

Main article: El Torito

CD-ROM XA

"CD-XA001" signature in volume descriptor, offset 1024.

Apple extensions

Signature "AA" or "BA" in directory record system use area.

Amiga extensions

zisofs extensions

Main article: zisofs

RISC OS extensions

Signature "ARCHIMEDES" in directory record system use area.

TRANS.TBL

Main article: TRANS.TBL

See also

Specifications

Software

Reading

  • 7-Zip, see here for an example
  • isoinfo can perform basic operations and some validation.
  • libcdio (iso-info, iso-read, ...)
  • Operating systems often include drivers for ISO 9660. On Linux, an ISO 9660 image file can be mounted using a loopback driver (mount -t iso9660 -o loop ...).
  • isolyzer is a tool that verifies if the file size of an ISO image is consistent with the information in its filesystem-level headers. This can be useful for detecting incomplete (e.g. truncated) ISO images. Apart from ISO 9660, isolyzer also supports UDF, HFS and HFS+, as well as hybrids of all of these filesystems.

Writing

  • cdrkit → genisoimage
  • Countless CD burning applications

Links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox