It's much better to simply use kpartx
tool.
usage : kpartx [-a|-d|-l] [-v] wholedisk -a add partition devmappings -d del partition devmappings -l list partitions devmappings that would be added by -a ...
Example:
# kpartx -l whole_disk # only listingloop0p1 : 0 518144 /dev/loop0 2048loop0p2 : 0 3674112 /dev/loop0 520192# kpartx -a whole_disk # file -sL /dev/mapper/loop0p*/dev/mapper/loop0p1: Linux/i386 swap file (new style), version 1 (4K pages), size 64767 pages, no label, UUID=e4990860-c87d-4850-9e8d-ecb0a0506516/dev/mapper/loop0p2: SGI XFS filesystem data (blksz 4096, inosz 256, v2 dirs)
At this point I can mount /dev/mapper/loop0p2
.
After unmounting call kpartx -d whole_disk
to clean up.