ISO Disk Image Format
The ISO 9660 disk image format — the standard for optical disc images, OS installation media, and software distribution as mountable virtual discs.
You are a file format specialist with deep expertise in the ISO 9660 disk image format. You understand the sector-based structure, volume descriptors, filesystem extensions (Joliet, Rock Ridge, El Torito, UDF), bootable disc creation, and hybrid ISO images for USB deployment. You can advise on creating, mounting, extracting, and writing ISO images across Linux, macOS, and Windows for OS installation, software distribution, disc archival, and virtual machine deployment. ## Key Points - **Extension:** `.iso` - **MIME type:** `application/x-iso9660-image` - **Magic bytes:** `CD001` at offset 0x8001 (ISO 9660 identifier) - **Sector size:** 2048 bytes (Mode 1, data), 2336 bytes (Mode 2, multimedia) - **Max file size:** 4 GB (ISO 9660 Level 2), 8 TB (UDF) - **Max volume size:** 8 TB (theoretical) - **Filesystem:** ISO 9660, often with extensions - **Joliet** (Microsoft) — Supports Unicode filenames up to 64 characters - **Rock Ridge** — Preserves Unix permissions, symlinks, long filenames - **El Torito** — Bootable disc specification (used for OS installers) - **UDF** (Universal Disk Format) — Modern replacement for large DVDs/Blu-rays, often hybrid with ISO 9660 - Primary Volume Descriptor (volume label, size, root directory location)
skilldb get file-formats-skills/ISO Disk Image FormatFull skill: 190 linesYou are a file format specialist with deep expertise in the ISO 9660 disk image format. You understand the sector-based structure, volume descriptors, filesystem extensions (Joliet, Rock Ridge, El Torito, UDF), bootable disc creation, and hybrid ISO images for USB deployment. You can advise on creating, mounting, extracting, and writing ISO images across Linux, macOS, and Windows for OS installation, software distribution, disc archival, and virtual machine deployment.
ISO Disk Image Format (.iso)
Overview
An ISO image is a sector-by-sector copy of an optical disc (CD, DVD, or Blu-ray), stored as a single file following the ISO 9660 filesystem standard. ISO files are the universal format for distributing operating system installers, live Linux distributions, game discs, and large software packages. Every major OS can mount ISO files directly as virtual drives.
The name comes from the ISO 9660 filesystem specification published by the International Organization for Standardization.
Core Philosophy
ISO is a bit-perfect image of an optical disc — a complete sector-by-sector copy of a CD, DVD, or Blu-ray disc stored as a single file. The format preserves everything on the disc: file system structure, boot sectors, hidden tracks, and the exact byte layout that optical drives expect. This fidelity is ISO's core purpose: to create a perfect digital replica of physical media.
ISO's primary use has shifted from optical disc duplication to software distribution and virtual machine provisioning. Operating system installers (Linux distributions, Windows ISOs), bootable rescue media, and VM guest OS images are commonly distributed as ISO files. Modern operating systems can mount ISO files directly as virtual drives, eliminating the need to burn physical discs.
ISO files are not compressed archives, despite being used similarly. An ISO of a 4.7 GB DVD is exactly 4.7 GB. If you need to reduce ISO file size for distribution, compress with gzip, zstd, or 7z externally. For archiving collections of files where disc image fidelity is not needed, use ZIP, tar.gz, or 7z instead — they are more flexible and typically much smaller.
Technical Specifications
- Extension:
.iso - MIME type:
application/x-iso9660-image - Magic bytes:
CD001at offset 0x8001 (ISO 9660 identifier) - Sector size: 2048 bytes (Mode 1, data), 2336 bytes (Mode 2, multimedia)
- Max file size: 4 GB (ISO 9660 Level 2), 8 TB (UDF)
- Max volume size: 8 TB (theoretical)
- Filesystem: ISO 9660, often with extensions
Filesystem Extensions
- Joliet (Microsoft) — Supports Unicode filenames up to 64 characters
- Rock Ridge — Preserves Unix permissions, symlinks, long filenames
- El Torito — Bootable disc specification (used for OS installers)
- UDF (Universal Disk Format) — Modern replacement for large DVDs/Blu-rays, often hybrid with ISO 9660
Internal Structure
[System Area (32 KB, unused by ISO 9660)]
[Volume Descriptor Set]
- Primary Volume Descriptor (volume label, size, root directory location)
- Supplementary Volume Descriptors (Joliet, etc.)
- Boot Record (El Torito, if bootable)
- Volume Descriptor Set Terminator
[Path Table]
[Directory Records]
[File Data]
How to Work With It
Mounting ISO Images
# Linux
sudo mount -o loop image.iso /mnt/iso
# Or without root (udisksctl)
udisksctl loop-setup -r -f image.iso
# macOS
hdiutil mount image.iso
# Windows — double-click in Explorer (native since Windows 8)
# Or via PowerShell:
Mount-DiskImage -ImagePath "C:\path\to\image.iso"
Creating ISO Images
# From a directory (Linux)
genisoimage -o output.iso -R -J -joliet-long -V "VOLUME_LABEL" ./source_dir/
# Or with xorriso
xorriso -as mkisofs -o output.iso -R -J -V "LABEL" ./source_dir/
# Bootable ISO (BIOS + UEFI)
xorriso -as mkisofs \
-o bootable.iso \
-isohybrid-mbr /usr/lib/ISOLINUX/isohdpfx.bin \
-c isolinux/boot.cat \
-b isolinux/isolinux.bin \
-no-emul-boot -boot-load-size 4 -boot-info-table \
-eltorito-alt-boot -e boot/grub/efi.img -no-emul-boot \
-isohybrid-gpt-basdat \
./iso_contents/
# From a CD/DVD drive
dd if=/dev/cdrom of=disc.iso bs=2048
# macOS from folder
hdiutil makehybrid -o output.iso -iso -joliet source_folder/
Writing ISO to USB
# Linux/macOS (DESTRUCTIVE — targets entire device)
sudo dd if=image.iso of=/dev/sdX bs=4M status=progress
# Better alternative
sudo cp image.iso /dev/sdX && sync
# Windows — use Rufus, Ventoy, or balenaEtcher
Extracting Contents
# Linux
7z x image.iso -o./extracted/
bsdtar xf image.iso -C ./extracted/
# xorriso
xorriso -osirrox on -indev image.iso -extract / ./extracted/
# Python
import pycdlib
iso = pycdlib.PyCdlib()
iso.open('image.iso')
Common Use Cases
- OS installation: Windows, Linux, and BSD distributions are distributed as ISO files
- Live environments: Bootable Linux desktops (Ubuntu, Fedora live ISOs)
- Software distribution: Large applications, game discs, driver packages
- Disc backup: Archiving physical CD/DVD/Blu-ray collections
- Virtual machines: Mounting installers in VirtualBox, VMware, QEMU
- UEFI firmware: Firmware updates often distributed as bootable ISOs
Pros & Cons
Pros
- Universal format — mountable on every major OS without third-party software
- Exact sector-level copy preserves all disc structures including boot sectors
- Bootable when written to USB or used with virtual machines
- Well-defined specification (ISO 9660 + extensions)
- Read-only by nature, which ensures integrity
- Hybrid ISO images work on both optical drives and USB sticks
Cons
- No compression — ISOs are full-size copies of the disc contents
- ISO 9660 has filename and file size limitations (mitigated by Joliet/Rock Ridge/UDF)
- Read-only format — cannot add or modify files after creation
- Large file sizes for DVD/Blu-ray images (4.7 GB to 50 GB)
- No encryption built into the format
- BIN/CUE format is needed for discs with audio tracks or mixed modes
Compatibility
| Platform | Mount Natively | Create | Notes |
|---|---|---|---|
| Windows | Yes (8+) | ImgBurn, DISM | Double-click to mount since Windows 8 |
| macOS | Yes | hdiutil | Native mount and creation |
| Linux | Yes | genisoimage, xorriso | Mount via loop device |
| VMs | Yes | N/A | All hypervisors support ISO as virtual CD |
Programming languages: Python (pycdlib), Go (diskfs), C (libisofs, libcdio), Rust (cdfs).
Related Formats
- DMG — Apple's equivalent disk image format (macOS-specific)
- IMG — Raw disk image, sometimes used interchangeably with ISO
- BIN/CUE — Alternative disc image format that supports audio tracks
- NRG — Nero disc image (proprietary)
- MDS/MDF — Alcohol 120% disc image (proprietary)
- VHD/VHDX — Microsoft virtual hard disk format
- UDF — Universal Disk Format, modern filesystem for optical media
Practical Usage
- Bootable USB from ISO: Use
sudo dd if=image.iso of=/dev/sdX bs=4M status=progress && syncon Linux/macOS, or Rufus/Ventoy on Windows. Modern ISOs are typically hybrid (isohybrid) and work on both optical drives and USB sticks. - Virtual machine installation: Attach ISO files as virtual CD drives in VirtualBox, VMware, or QEMU (
-cdrom image.iso) to install operating systems in VMs without writing to physical media. - Custom ISO creation for deployment: Use xorriso or genisoimage to create custom ISOs containing your software, scripts, and configuration for automated deployments. Include Rock Ridge extensions for Unix permission preservation.
- Ventoy for multi-ISO USB: Instead of writing one ISO to a USB drive, install Ventoy and copy multiple ISO files directly to the USB. Ventoy presents a boot menu to select which ISO to boot.
- ISO integrity verification: Always verify downloaded ISOs with
sha256sum image.isoagainst the published checksum. Corrupted ISO images are a common cause of installation failures and can indicate tampering.
Anti-Patterns
- Using
ddwithout double-checking the target device:ddwrites directly to the specified device with no confirmation. Writing to the wrong/dev/sdXdestroys that drive's contents instantly. Always verify the target device withlsblkbefore running dd. - Assuming ISO 9660 supports large files or long filenames natively: Base ISO 9660 limits filenames to 8.3 format and files to 4 GB. Always use Joliet (Windows) or Rock Ridge (Unix) extensions for long filenames, and UDF for files over 4 GB.
- Trying to modify an ISO file in place: ISO images are read-only by design. To change contents, extract the ISO, modify files, and create a new ISO. There is no efficient in-place editing mechanism.
- Creating non-hybrid ISOs for USB deployment: Standard ISO 9660 images may not boot from USB drives. Use
isohybrid(from syslinux) or xorriso's hybrid options to create ISOs that are bootable from both optical and USB media. - Distributing large ISOs without providing checksums: Network downloads can introduce bit errors, especially for multi-gigabyte ISO files. Always publish SHA-256 checksums alongside ISO downloads, and consider providing torrent files for distributed downloading.
Install this skill directly: skilldb add file-formats-skills
Related Skills
3MF 3D Manufacturing Format
The 3MF file format — the modern replacement for STL in 3D printing, supporting colors, materials, multi-object assemblies, and precise manufacturing data in a single package.
7-Zip Compressed Archive
The 7z archive format — open-source high-ratio compression using LZMA2, with strong AES-256 encryption, solid archives, and multi-threading support.
AAC (Advanced Audio Coding)
A lossy audio codec standardized as part of MPEG-2 and MPEG-4, designed to supersede MP3 with better quality at equivalent or lower bitrates.
AC3 (Dolby Digital)
Dolby's surround sound audio codec used in cinema, DVD, Blu-ray, and broadcast television for multichannel 5.1 audio delivery.
AI Adobe Illustrator Format
AI is Adobe Illustrator's native vector graphics file format, used for
AIFF (Audio Interchange File Format)
Apple's uncompressed audio format storing raw PCM data, serving as the Mac equivalent of WAV for professional audio production.