≡ Menu

How to: Mount an ISO image under Linux

An ISO image is an archive file (disk image) of an optical disc using a conventional ISO (International Organization for Standardization) format. ISO image files typically have a file extension of .ISO. The name “ISO” is taken from the ISO 9660 file system used with CD-ROM media, but an ISO image can also contain UDF file system because UDF is backward-compatible to ISO 9660.

You can mount an ISO images via the loop device under Linux. It is possible to specify transfer functions (for encryption/decryption or other purposes) using loop device.

But, how do you mount an ISO image under Linux? You need to use mount command as follows:

Procedure to mount ISO images under Linux

1) You must login as a root user, if not root user then switch to root user using following command:
$ su -

2) Create the directory i.e. mount point:
# mkdir -p /mnt/disk

3) Use mount command as follows to mount iso file called disk1.iso:
# mount -o loop disk1.iso /mnt/disk

4) Change directory to list files stored inside an ISO image:
# cd /mnt/disk
# ls -l

More about loop device

A loop device is a pseudo-device that makes a file accessible as a block device. Loop devices are often used for CD ISO images and floppy disc images. Mounting a file containing a filesystem via such a loop mount makes the files within that filesystem accessible. They appear in the mount point directory using above commands.

See also:

Share this on:

Your support makes a big difference:
I have a small favor to ask. More people are reading the nixCraft. Many of you block advertising which is your right, and advertising revenues are not sufficient to cover my operating costs. So you can see why I need to ask for your help. The nixCraft, takes a lot of my time and hard work to produce. If you use nixCraft, who likes it, helps me with donations:
Become a Supporter →    Make a contribution via Paypal/Bitcoin →   

Don't Miss Any Linux and Unix Tips

Get nixCraft in your inbox. It's free:

{ 68 comments… add one }
  • Mills September 15, 2004, 8:13 pm

    Cheers, worked like a charm :-)

  • Anonymous April 27, 2005, 9:48 pm

    Quick comment:
    You need the kernel module loop for it; people that get the error about it in mount should get the latest copy of the linux source and proceed to compile the correct module which is under block devices
    Other than that it works ;)

  • sshawnn November 5, 2006, 3:24 am

    Just what i needed, mahalo!

  • Hashim January 10, 2007, 8:52 pm

    Thanks! This was very very easy to find and follow. I’m new to linux and this is the reason I made the swicth, the help that everyone give make learning linux easy and fun. Thank you for your time, thank you!

  • ORB April 18, 2007, 1:00 pm

    sweet! worked cleanly, no stupid paid software for windows needed to do such a simple task!

  • richard July 7, 2007, 8:20 pm

    Looks like we cant mount it for RW. Bloody well then.

    • Gary August 16, 2010, 3:19 pm

      You’d have to finalize the RW disc so that it becomes an iso image. You can still erase the disc later.

      • hkgo78 September 29, 2011, 7:38 pm

        I think he means mounting the iso file for reading and writing.

  • Reggie July 19, 2007, 4:13 pm

    This tip was a great help! I only need to read the iso for installations so thanks a heap!

  • kvz August 2, 2007, 11:32 am
  • artiomix August 2, 2007, 10:10 pm

    richard, to edit bootable ISO mount it as it’s described here, copy it’s contents to some directory, edit files you need and generate new ISO by command:

    sudo mkisofs -o /tmp/new.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -J -R -V “new iso name” .


    read this

  • Raul Trujillo January 30, 2008, 4:50 pm

    Works like a charm. It kept me from Burning a DVD for a computer that didn’t read DVDs. I did a Net Install of Linux over FTP. I copied the File to a Linux FTP Server, mounted the ISO and did an install. Sweet.

  • hedron February 4, 2008, 3:18 am

    But what if I don’t have root? Or am too lazy to su or sudo?

    • me February 8, 2015, 7:26 pm

      You won’t get far in life, lol

  • PICCORO April 30, 2008, 2:27 pm

    the .img .iso and .nrg images can mounted directly, only change the options for loop and offest..

    the other types (.b5i , .daa , .cdd , .cue , .bin , .xbo , .mdf , .cda , .pdi ) can mounting by the cdemu/cdemuserspace module for linux kernels, here all packages for debian users:


    other method is coverting the image to native iso image and then mounting normaly..

    in the McKAY blog are all convertion utilitys for al image types, including .daa (poweriso) and pdi (instancopy)

  • PICCORO April 30, 2008, 2:31 pm


    u dont need su or sudo for mounting, that is stupid..

    only added user to cdrom and disk groups an mount groups, and now user can mounting without any su or sudo permissions..

    McKAY’s isos tools and converters for VENENUX/debian

  • Guido Flohr May 2, 2008, 5:18 pm

    @hedron: You need root access to mount any device, unless it is listed in /etc/fstab and has the option “user”. That also answer your question: Set up a filename convention for the iso image (/home/user/mountme.iso) and the directory where to mount it (/home/user/mountmehere), add an appropriate line to /etc/fstab, don’t forget the option to allow ordinary users to mount the pseudo device, and you’re done.

  • linuxuser May 9, 2008, 8:45 am

    Thanks alot

  • Knusper May 15, 2008, 6:17 pm

    Wonderfull! Works!

  • PICCORO June 3, 2008, 2:24 pm

    root acces is not necesary, u must added u’r username to cdrom’s group, user’s group and disk’s group for mounting access command

    the tool to manage virtual devices as iso images is CDemu compilation and has two brands, old and new..

    old is called “cdemu” and only it for kernels 2.4, 2.6.8 and 2.6.17 to 2.6.20

    new last is renamed to cdemu-userspace, and it for new recents kernels 2.6.22 and above..

    for more info see cd convertion tools and McKAY debian iso tools

  • poysan June 19, 2008, 5:29 am

    Um, what if it comes back asking for a fs type? RH50ES states “you must specify the filesystem type”.

  • nixCraft June 19, 2008, 5:37 am

    iso9660 used for ISO images, try
    mount -t iso9660 -o loop disk1.iso /mnt/disk

  • himadri June 27, 2008, 3:57 pm

    hey vivek , great allround effort this .. I have feeds from your site and follow your site religiously ..

  • Mike July 10, 2008, 2:03 pm

    FYI, I have seen “disk1.iso: Permission denied” errors. This can be corrected by adding a ro flag.

    mount -t iso9660 -o loop,ro disk1.iso /mnt/disk

  • Gn0m3r.X October 12, 2008, 12:08 pm

    The right way of doing this is
    $>modprobe loop
    $>mount -t iso9660 -o loop disk1.iso /mnt/disk
    Coz in the new kernels loop is compiled as a module

  • mian October 31, 2008, 5:27 am

    Dear ,

    r u sure dat it’ll work.

    mail me @ usama.comsys@gmail.com

    I need support regarding ISO images of servers @ Freebsd6.2

  • Gn0m3r.X November 7, 2008, 4:32 pm

    Sorry I forgot to mention that u need to ‘modprobe’ only if u get this error
    mount: could not find any device /dev/loop#

  • Miladin December 18, 2008, 5:23 pm

    Thanks, it worked perfectly :)

  • Jim February 12, 2009, 11:06 pm

    Top of the google results! Thanks for the help.

  • Gary February 15, 2009, 3:36 pm

    Hey all,

    Wondering if you can help me on this one. I am pretty new to linux and playonlinux but i am having trouble with this iso file. I am using mandriva spring 2009 and i have KDE version 3.5. I am using wine version 1.1.4. I have downloaded rollercoaster tycoon 2 as an iso file and it won’t let me mount the file. I can create a directory but as soon as i go to mount the iso file i get the following message:

    Can’t find rollercoastertycoon2.iso/mnt/iso in /etc/fstab or /etc/mtab.

    This is probably something stupid that i am missing cause for some odd reason mandriva likes to go round the world for a shortcut. If anyone can help me on this it would be well appreciated cause i am a fast learner and once i am successful the first time i will beable to do this no problem time after time again.

    Thanks for all the help i receive

  • LeiMai March 19, 2009, 11:55 pm

    I tried
    mount -t iso9660 -o loop disk1.iso /mnt/disk
    but it doesn’t work for .mdf/.mdf files tells me is a wrong fs type or bad option. Is there another way to mount alcohol images in linux or will I just have to convert it?

  • andrae March 31, 2009, 5:42 pm

    you’re the best :-))

  • sahil May 2, 2009, 12:49 pm

    you may use acetoneiso for gui…..

  • kalyani May 14, 2009, 9:53 am

    thanks a lot……….its awesome!!

  • Dokjae June 20, 2009, 11:44 pm

    Hi all. I am fairly new to linux, but I need create an ISO from files that are already on my hdd. I’ve searched and to no avail, i’ve not been able to find any info on making an ISO from files that aren’t on CD/DVD. Any help with this would be greatly appreciated. Thanks so much.

  • Dokjae June 21, 2009, 2:45 am

    Thanks Vivek. This got me thinking… Is it possible to “take a snapshot” of drive with the system installed and make a bootable CD with the image? Possibly it becoming a system recovery?

    • nixCraft June 21, 2009, 2:54 am

      Yes, you can create full recovery tape or dvd with help of dump and restore command.

  • yogesh July 18, 2009, 10:10 am

    i have an iso image of rhel 5.1 dvd pls let me know how to burn it to dvd on command line.

  • john August 6, 2009, 9:11 pm

    works great assuming you watch your upper and lower case on the iso name, ha ha


  • Rico October 21, 2009, 11:08 pm

    Very nice, and simple, how-to. Not much of a Linux guy and this was easy enough I was able to get it the first time I tried.

    Any chance you could tell me how to unmount it now?

  • soul November 15, 2009, 2:41 pm

    # mount -t iso9660 -o loop,ro /xx/xx.iso /mnt/iso
    mount: wrong fs type, bad option, bad superblock on /dev/loop0,
    missing codepage or helper program, or other error
    In some cases useful info is found in syslog – try
    dmesg | tail or so

  • Simply Laz November 17, 2009, 11:24 pm

    Same as soul. Trying to mount Diablo 2 LoD disk. It may be the secureROM and etc securities on the image but I doubt it. Xubuntu Karamic (9.10) using XFCE Terminal 0.4.2. Driving me nuts. Next step gui f**k it : )

  • soul.. November 20, 2009, 11:59 am

    about my previous mesage and error i tryed many other issos, so i think i got bad iso(damaged or something…)

  • krow king January 3, 2010, 11:16 am

    if you want to unmount the iso file just type

    # umount /mnt/disk
    disk is the name of the folder you created.

    you can then remove the directory

    # rmdir /mnt/disk

  • Jay_Linux January 14, 2010, 2:18 pm

    How to make a multi-distro bootable USB disk, using ISO images ?

  • vivek August 27, 2010, 11:00 am


    After extracting the .iso image, i cant able to change the permission of that extracted files.not even to change the ownership.Any help with this would be greatly appreciated. Thanks so much.

  • Marcelo March 22, 2011, 12:57 am

    Plz help, im 100% new to linux and i have no clue what im doing!! i tried to copy what the instructions says but it says there is no such directory… can anyone help me??

  • Harsh April 1, 2011, 2:14 pm

    Exactly what i was looking for……Thanks

  • mischa July 1, 2011, 5:09 pm

    Thank you, this really helps. Its fine to get a clear and easy instruction!

  • Bruno July 22, 2011, 9:32 pm

    What if I want to mount an ISO file as the CD, like Daemon Tools, how can I do that?

  • Abhishek Kasina January 23, 2012, 3:19 pm

    Thank you :)

  • Anoop February 22, 2012, 12:46 pm

    Anyone can give the fstab entry to mount iso permanantly

  • Rick C. Hodgin July 26, 2012, 10:30 pm

    You forgot to mention how to un-mount them. :-)

  • Girish September 18, 2012, 6:17 am

    Thanks, that worked

    Is there a command to unmount these once done – just like umount in Solaris??

    • VPN Forums December 16, 2012, 11:38 am

      Use the umount command. eg “umount /mnt/disk”

  • Shiv Pathak January 26, 2013, 4:50 am

    If someone needs to mount iso file through /etc/fstab permanently following entry can be done –
    /CentOS-6.3-x86_64-bin-DVD1.iso /mnt/os iso9660 loop 0 0
    Note- please note that I have iso file on / and mounted on /mnt/os please change these things accordingly.


  • john kall August 21, 2013, 7:38 am

    You can use below command reference to get Or mount CD/DVD-ROM on LINUX-OS :
    1.) If you know / ensure about your CD/DVD-ROM Drive ( e.g. /dev/hdx )
    # df -h
    # mount -t iso9660 -o loop /dev/hdc /mnt
    # df -h
    2.) otherwise, use below reference :
    # df -h
    # mount -t iso9660 -o loop,ro /xx/xx.iso /mnt/
    # df -h
    John Kall

  • joe October 9, 2013, 10:15 am

    wow, very nice. I’m planning to download a 3rd party software but this gives me an easy approach


  • Adonis Sardinas April 9, 2014, 1:57 am

    Not even the Parallels support team could help me with this one, they tried to sell me on getting upgraded to 9.

    As you suggested, installed 9 -> extracted the .iso. -> reinstalled 8 -> mounted the .iso -> and installed

    But for all of you to reduce the headache Here is a link to download the .ISO folks,
    download prl.tools-lin.iso
    Mount, enjoy!

  • jeremy May 12, 2014, 5:41 am

    I have installed rhel6 in vmware vsphere and it has only CUI
    mount -o loop RHEL6_X86_64.iso /mnt /disk/
    RHEL6_X86_64.iso : No such file or Directory
    Can u help me out with this?

    • NIX Craft May 13, 2014, 2:46 pm

      Make sure file named HEL6_X86_64.iso exists and it is the current directory:

      ls -l HEL6_X86_64.iso

      To mount type as root user:

      mkdir -p /mnt/disk/
      mount -o loop RHEL6_X86_64.iso /mnt/disk/
  • John Probert December 22, 2015, 9:32 am

    many thanks, helped me a lot

  • t.z. June 6, 2016, 10:32 pm

    ———- MOUNTING ISO IMAGE (on some *BSD and *Linux) ———-
    su -l root
    mkdir /mydir
    mount -t iso9660 -o loop,ro cdimage.iso /mydir
    ls -la /mydir
    umount /mydir

  • t.z. June 6, 2016, 10:50 pm

    ———- Above for Linux only, now for some BSD’s ———-
    su -l root
    mkdir /mydir
    vnconfig vnd0 cdimage.iso
    mount -t cd9660 -o ro /dev/vnd0a /mydir
    ls -la /mydir
    umount /mydir
    vnconfig -u vnd0
    -t : image type: can be any image: cdrom, msdos, ext2..
    -o: options: [ ro: read only, rw: read/write ]
    sometimes man command is more useful than incomplete/bugy examples from unknown sources:
    man mount
    man vnconfig
    man ls
    man man

  • will July 2, 2016, 7:21 pm

    6/16 Where has this been all my life! Great post!!

  • mouz September 21, 2016, 3:20 pm

    awesome. it worked :)

  • xxx March 4, 2017, 7:49 am

    Just to thank for this article, worked perfectly, @ Debian 8, 2017

Leave a Comment

   Tagged with: , , , , , , , , , , , , , , , ,