Yes .. Many .. One is
# losetup /dev/loop0 System.img
# kpartx -a /dev/loop0
# ls -l /dev/mapper/loop0*
brw-rw—- 1 root disk 253, 0 Jul 14 18:53 /dev/mapper/loop0p1
brw-rw—- 1 root disk 253, 1 Jul 14 18:53 /dev/mapper/loop0p2
# mount /dev/mapper/loop0p2 /mnt
Another is
# fdisk -l -u System.img
…
Device Boot Start End Blocks Id System
System.img1 * 63 208844 104391 83 Linux
System.img2 208845 8385929 4088542+ 83 Linux
# echo 208845\*512 | bc
106928640
# mount -o loop,offset=106928640 System.img /mnt
But those will not work for partitions which are LVM .. like:
# fdisk -l -u System.img
Disk System.img: 0 MB, 0 bytes
255 heads, 63 sectors/track, 0 cylinders, total 0 sectors
Units = sectors of 1 * 512 = 512 bytes
Device Boot Start End Blocks Id System
System.img1 * 63 208844 104391 83 Linux
System.img2 208845 8385929 4088542+ 8e Linux LVM
mount fails with:
mount: you must specify the filesystem type
or
ioctl: LOOP_SET_STATUS: Invalid argument
(if you use an offset mount)
I am pretty sure that there is a way to mount the logical volumes under that LVM
from dom0 .. Need to investigate..
BTW
this is not supposed to work also if the filesystem is encrypted.. That
requires encryption arguments to be passed along too.. That is rreally
advised for the sake of security.