eMMCダンプからすべてのパーティションを読み取る方法

eMMCダンプからすべてのパーティションを読み取る方法

我々は、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 debuggerpart20.bin

ファイルを入手してUbuntu PCループデバイスにインストールする方法は次のとおりです。

cat part20.bin >  part20.iso
sudo losetup /dev/loop0 part20.iso

このコマンドはパーティション 20 をマウントし、その内容を表示します。

これで、デバッガを使用してバイナリの完全なeMMCコンテンツを読み取ると、さらに一歩進みますLauterbach。これで、以前に行った方法ですべてのパーティションをマウントしたかどうかはわかりません。私のUbuntu PCに4GBのバイナリがあり、上記のコマンドを試してみましたが、うまくいきましたが(エラーなし)、マウントされたパーティションが見えませんでした。 eMMCパーティションテーブルにパーティションがあることがわかっているので、rawすべてのパーティションを同じ方法で読み取ることは不可能かもしれませんが、私の質問は次のとおりです。

eMMCダンプですべてのパーティションを表示してそのパーティションからデータを読み取る方法はありますか?

関連情報