if you have an image file created from a single partition using dd, you can simply use
mount -o loop yourimage.img /mountpoint
to mount it. however, things get a bit more complicated if the image at hand was made of a complete disk containing several partitions.
now you can either use a partitioning tool like fdisk to figure tout the partition boundaries of the partition you want to mount and then use losetup
to create a loop device for that partition which you can then mount, or you can use a handy tool called kpartx
which will do it all for you with a single command.. isn't that nice :) the tool can be found in most distributions repo, so simply install it with your packet manager. in ubutu the package is called kpartx
to have kpartx create a loop device and mappings in /dev/mapper/ for all your imaged partitions simply run (as root or using sudo)
kpartx -av yourimage.img
and it will tell you which loop devices it has created:
add map loop0p1 (252:0): 0 129024 linear /dev/loop0 8192 add map loop0p2 (252:1): 0 2578432 linear /dev/loop0 137216
now simply mount your partition as you would mount any partition on a regular block device and you're done
mount /dev/mapper/loop0p2 /mnt/
when you're done, you can unmount the partition and then remove the mappings:
umount /mnt kpartx -d yourimage.img
in case your os automounted some other partitions after the mappings where created you might see an error message like this:
ioctl: LOOP_CLR_FD: No such device or address
simply unmount that now defunct partition and the mapping will disappear
You can also remove the mapping by loop device:
kpartx -d /dev/loop1
in case you have lost track of which image was mounted to which loop device, you can use losetup
to list the mappings:
losetup -a
or on newer versions of losetup:
losetup --list