Mounting ISO images on UNIX and Linux

This is a simple post providing details on how to mount and unmount an ISO CD-ROM image as a local file system on various UNIX platforms.

On Solaris

  • To mount:
    # lofiadm -a /<file.iso>
    This will create device file /dev/lofi/1
    # mount -F hsfs -o ro /dev/lofi/1 /<mountpoint>
  • To unmount:
    # umount /<mountpoint>
    # lofiadm -d /dev/lofi/1

On RedHat/Linux

  • To mount:
    # mount -t iso9660 /<file.iso> /<mountpoint> -o loop
  • To unmount:
    # umount /<mountpoint>

On HP-UX

  • To mount:
    # nohup pfs_mountd &
    # nohup pfsd &
    # pfs_mount -o xlat=UNIX <file.iso> /<mountpoint>
  • To unmount
    # pfs_umount /
    Subsequently, kill the following processes:
    1. pfs_mountd
    2. pfsd
    3. pfs_mountd.rpc
    4. pfsd.rpc

On IBM AIX

  • To mount:
    1. Build a logical volume (the size of an ISO image, better if a little bigger)
    2. Create an entry in /etc/filesystem using that logical volume (LV), but setting its Virtual File System (V'S) to be cdrfs
    3. Create the mount point for this LV/ISO
    4. Copy the ISO image to the LV using dd
    5. Mount and work on it like a mounted CD-ROM
      The entry in /etc/filesystem should look like:
      /IsoCD:
      dev = /dev/lv09
      vfs = cdrfs
      mount = false
      options = ro
      account = false
  • To mount (example 2):
    Mount ISO image as a cdrfs filesystem.
    # loopmount -i image.iso -o “-V cdrfs -o ro” -m  /mnt
  • To unmount:
    1. Unmount the file system
      # umount /mnt
    2. Destroy the logical volume