losetup and offsets

How to mount a filesystem inside a harddrive image

# losetup /dev/loop0 /path/to/diskimage

# fdisk -l /dev/loop0

(example)

Disk /dev/sdb: 160.0 GB, 160041885696 bytes

255 heads, 63 sectors/track, 19457 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

/dev/sdb1 * 1 1044 8385898+ c W95 FAT32 (LBA)

/dev/sdb2 1045 19457 147902422+ 83 Linux

suppose you want to mount the partition on sdb2, the offset for that

would be 8225280 * 1045 = 8595417600.

detach the disk image

# losetup -d /dev/loop0

and setup the loop for the partiion

# losetup -o8595417600 /dev/loop0 /path/to/diskimage

and mount it

# mount -t fstype /dev/loop0 /path/to/mountdir