- Let's have unknown disk drive uncompressed raw image (created for example by
dd if=/dev/sda of=image) in single file. - If we knew the disk layout, we could mount particular partitions from the file as the loop devices via skipping some offsets.
- Let's suppose we don't know the layout. Can we somehow "mount" the whole disk drive
image, which process would create virtual block devices according to the disk layout? For example having 2 partitions in theimagewould result in creating 3 devices (/dev/sdx,/dev/sdx1,/dev/sdx2). We could then mount such devices as usual.
Asked
Active
Viewed 9,500 times
3
sharpener
- 383
- 1
- 3
- 12
-
What you are looking for is the loop device. You can attach anything on one loop device, then run kpartx against it to discover partitions which can then be mounted. – Jan 30 '16 at 16:29
-
@Deltik: Thanks, I have already found similar posts and formulated an answer. – sharpener Jan 30 '16 at 16:54
-
if it is an image of a single partition you cant just `mount` it directly. Only if the image contains more than a single partition or filesystem do you need a program to parse input and emulate several volumes. – jiggunjer Jan 30 '16 at 18:04
1 Answers
1
After some more research I have found, there are at least two methods to test:
- According to this post,
kpartxis applicable tool.- Unfortunately it didn't work on Arch Linux for me
- It's from AUR:
yaourt multipath-tools-git, seems to be not well supported/finished and ended up with errors like:device-mapper: reload ioctl on loop0p1 failed: No such device
- Can be at least used to list the embedded partitions:
kpartx -l image - EDIT: According to this post, it seems to be obsolete and the preferred method is the following one.
- According to this post,
losetupcan be used.- Firstly it didn't work:
losetup /dev/loop0 image(missing the devices for particular partitions). - Trying again using additional
-Poption did the work:losetup -d /dev/loop0,losetup -P /dev/loop0 imageand/dev/loop0pXdevices were created. - These devices are then mountable as expected, like
mount /dev/loop0p3 /mnt/x -t ntfs
- Firstly it didn't work:
-
I wonder if would work without the MBR/GPT information. What if you cropped the first couple of sectors, so the image starts at the first partition? And are those `/dev/loop0px` volumes writable, as in changes are saved to the original image file? – jiggunjer Jan 30 '16 at 18:06