Mount partition from a raw disk image
In this post, I will share how you can mount a raw disk image such as an image generated with dd. Raw disk image or RAW Image Format is a bit-for-bit copy of disk data, without any metadata information on files. In Linux, dd is a popular tool for data transfer by duplicating entire disk for instance. Let us create a disk image of a mount with an EXT3 file system –
1 2 3 4 5 6 7 8 | [root@kauai src] # dd if=/dev/sdb of=disk.img 7233761+0 records in 7233760+0 records out 3703685120 bytes (3.7 GB) copied, 236.166 s, 15.7 MB /s [root@kauai src] # ls -alh disk.img -rw-r--r--. 1 root root 3.5G Jan 15 18:44 disk.img |
We have copied a mount with multiple files into a single disk.img file which we can copy to another system. Now let us examine the raw disk layout, that we can use to mount as a file system –
1 2 3 4 5 6 7 8 9 10 11 12 13 | [root@kauai src] # fdisk -lu disk.img You must set cylinders. You can do this from the extra functions menu. Disk disk.img: 0 MB, 0 bytes 124 heads, 62 sectors /track , 0 cylinders, total 0 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical /physical ): 512 bytes / 512 bytes I /O size (minimum /optimal ): 512 bytes / 512 bytes Disk identifier: 0xdebbbd93 Device Boot Start End Blocks Id System disk.img 630416 945623 157604 83 Linux |
As we can see the raw disk has 512 byte size sectors and it starts at offset 630416, given this information we can use mount command to mount the disk image –
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | [root@kauai src] # mount -o loop,offset=$((630416*512)) disk.img /mnt/hdisk/ [root@kauai src] # ls -al /mnt/hdisk/ total 37 drwxr-xr-x. 3 root root 1024 Jan 15 18:39 . drwxr-xr-x. 4 root root 4096 Nov 17 20:04 .. -rw-r--r--. 1 root root 15 Jan 15 18:39 file21 -rw-r--r--. 1 root root 15 Jan 15 18:39 file22 -rw-r--r--. 1 root root 15 Jan 15 18:39 file23 -rw-r--r--. 1 root root 15 Jan 15 18:39 file24 -rw-r--r--. 1 root root 15 Jan 15 18:39 file25 -rw-r--r--. 1 root root 15 Jan 15 18:39 file26 -rw-r--r--. 1 root root 15 Jan 15 18:39 file27 -rw-r--r--. 1 root root 15 Jan 15 18:39 file28 -rw-r--r--. 1 root root 15 Jan 15 18:39 file29 -rw-r--r--. 1 root root 15 Jan 15 18:39 file30 drwx------. 2 root root 12288 Jan 15 18:37 lost+found [root@kauai src] # cat /mnt/hdisk/file26 File number 26 |
Here we were able to mount the disk image and be able to read the content of one of the text files.
References –