Originally Posted by
Quote:
Originally Posted by knc1
The sum of the mmcblk0 partitions is 8 blocks less than the raw device.
So assume that un-partitioned space is at the front of the device.
The units of /proc/partitions is 1024 bytes.
The (default) units of dd is 512 bytes.
dd if=/dev/mmcblk0 of=/mnt/base-us/hidden1.bin bs=1024 count=8
dd if=/dev/mmcblk0p1 of=/mnt/base-us/part1.bin bs=1024
dd if=/dev/mmcblk0p2 of=/mnt/base-us/part2.bin bs=1024
dd if=/dev/mmcblk0p3 of=/mnt/base-us/part3.bin bs=1024
You are writing to the file system that is backed by the storage device /dev/mmcblk0p4 so you don't need to copy that but there is (**should be**) 16 sectors outside of the fat partition that may hold something interesting.
dd if=/dev/mmcblk0p4 of=/mnt/base-us/hidden2.bin bs=512 count=16
Ignore /dev/loop/0 (/dev/loop0) that is also part of the user storage layers.
The mtdblock devices are none of the above, so copy out those also
dd if=/dev/mtdblock0 of=/mnt/base-us/mtd_0.bin bs=1024
Repeat eight times, changing only the names.
|
So full disclosure would be
Quote:
[root@kindle root]# cat /proc/partitions
major minor #blocks name
7 0 3510232 loop0
31 0 128 mtdblock0
31 1 3584 mtdblock1
31 2 32 mtdblock2
31 3 128 mtdblock3
31 4 3584 mtdblock4
31 5 64 mtdblock5
31 6 128 mtdblock6
31 7 24 mtdblock7
31 8 64 mtdblock8
179 0 3952640 mmcblk0
179 1 409624 mmcblk0p1
179 2 24576 mmcblk0p2
179 3 8192 mmcblk0p3
179 4 3510240 mmcblk0p4
|
then:
Quote:
[root@kindle root]# dd if=/dev/mmcblk0 of=/mnt/base-us/hidden1.bin bs=1024 count=8
8+0 records in
8+0 records out
[root@kindle root]# dd if=/dev/mmcblk0p1 of=/mnt/base-us/part1.bin bs=1024
409624+0 records in
409624+0 records out
[root@kindle root]# dd if=/dev/mmcblk0p2 of=/mnt/base-us/part2.bin bs=1024
24576+0 records in
24576+0 records out
[root@kindle root]# dd if=/dev/mmcblk0p3 of=/mnt/base-us/part3.bin bs=1024
8192+0 records in
8192+0 records out
[root@kindle root]# dd if=/dev/mmcblk0p4 of=/mnt/base-us/hidden2.bin bs=512 count=16
16+0 records in
16+0 records out
|
And:
Quote:
[root@kindle root]# dd if=/dev/mtdblock/0 of=/mnt/base-us/mtd_0.bin bs=1024
128+0 records in
128+0 records out
[root@kindle root]# dd if=/dev/mtdblock/1 of=/mnt/base-us/mtd_1.bin bs=1024
3584+0 records in
3584+0 records out
[root@kindle root]# dd if=/dev/mtdblock/2 of=/mnt/base-us/mtd_2.bin bs=1024
32+0 records in
32+0 records out
[root@kindle root]# dd if=/dev/mtdblock/3 of=/mnt/base-us/mtd_3.bin bs=1024
128+0 records in
128+0 records out
[root@kindle root]# dd if=/dev/mtdblock/4 of=/mnt/base-us/mtd_4.bin bs=1024
3584+0 records in
3584+0 records out
[root@kindle root]# dd if=/dev/mtdblock/5 of=/mnt/base-us/mtd_5.bin bs=1024
64+0 records in
64+0 records out
[root@kindle root]# dd if=/dev/mtdblock/6 of=/mnt/base-us/mtd_6.bin bs=1024
128+0 records in
128+0 records out
[root@kindle root]# dd if=/dev/mtdblock/7 of=/mnt/base-us/mtd_7.bin bs=1024
24+0 records in
24+0 records out
[root@kindle root]# dd if=/dev/mtdblock/8 of=/mnt/base-us/mtd_8.bin bs=1024
64+0 records in
64+0 records out
|
which gives you a better sense of what you might be dealing with.