
4GB eMMCと256MB RAMを搭載したBeaglebone Blackベースのカスタムボードがあります。eMMC
は次のようにパーティション化されています。
# parted --list
Model: MMC MMC04G (sd/mmc)
Disk /dev/mmcblk0: 3842MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 131kB 262kB 131kB
2 262kB 393kB 131kB
3 393kB 524kB 131kB
4 524kB 1573kB 1049kB
5 1573kB 2621kB 1049kB
6 2621kB 3146kB 524kB
7 3146kB 3277kB 131kB
8 3277kB 8520kB 5243kB
9 8520kB 13.8MB 5243kB
10 13.8MB 19.0MB 5243kB
11 19.0MB 19.3MB 262kB
12 19.3MB 19.5MB 262kB
13 19.5MB 19.8MB 262kB
14 21.0MB 32.5MB 11.5MB
15 33.6MB 243MB 210MB ext4
16 243MB 453MB 210MB ext4
17 453MB 558MB 105MB ext4
18 558MB 621MB 62.9MB ext4
19 621MB 830MB 210MB ext4
20 830MB 867MB 36.7MB ext4
21 867MB 3827MB 2960MB ext4
ここで、eMMC パーティションをダンプし、そこからデータを読み取ります。これは主に、フィールドで返されたボードのデバッグのためです。たとえば、バイナリ ファイル内のパーティションの 1 つを読み取り、マウントしてそのデータを読み取ることができます。
例えば、パーティション20(ext4パーティション)を取り、それをファイル名から読み込んu-boot
だり、Lauterbach debugger
part20.bin
そのファイルを取得してUbuntu PC
ループデバイスにマウントすると、次のようになります。
cat part20.bin > part20.iso
sudo losetup /dev/loop0 part20.iso
このコマンドはパーティション 20 をマウントし、その内容を表示します。
次に、デバッガーを使用してバイナリファイルでeMMCコンテンツ全体を読み取りますLauterbach
。以前と同じ方法ですべてのパーティションをマウントできるかどうかはわかりません。Ubuntu PCに4GBのバイナリファイルがあり、上記のコマンドを試しましたが、正常に動作します(エラーなし)が、パーティションがマウントされていません。eMMCraw
パーティションテーブルにパーティションがあることはわかっているので、すべてのパーティションを同じ方法で読み取ることはできないかもしれませんが、私の質問は次のとおりです。
eMMC ダンプからすべてのパーティションを表示し、そこからデータを読み取る方法はありますか?