
Wir haben ein Beaglebone Black-basiertes Custom-Board mit 4 GB eMMC und 256 MB RAM.
eMMC ist wie folgt partitioniert
# 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
Jetzt möchten wir eMMC-Partitionen sichern und Daten daraus lesen. Dies dient hauptsächlich Debugging-Zwecken für alle im Feld zurückgegebenen Boards. Ich könnte beispielsweise eine der Partitionen in einer Binärdatei lesen, sie mounten und ihre Daten lesen.
Nehmen wir zum Beispiel Partition 20 (das ist eine ext4-Partition), dann kann ich sie auslesen u-boot
oder Lauterbach debugger
in den Dateinamen einfügen, sagen wirpart20.bin
Ich kann die Datei abrufen Ubuntu PC
und sie auf einem Loop-Gerät mounten, um sie zu erhalten. Ich habe das folgendermaßen gemacht:
cat part20.bin > part20.iso
sudo losetup /dev/loop0 part20.iso
Dieser Befehl mountet die Partition 20 und zeigt ihren Inhalt an.
Jetzt gehe ich einen Schritt weiter, indem ich den gesamten eMMC-Inhalt in einer Binärdatei mit Lauterbach
dem Debugger lese. Jetzt bin ich mir nicht sicher, ob ich alle Partitionen auf die gleiche Weise mounte wie zuvor. Ich habe eine 4 GB große Binärdatei auf meinem Ubuntu-PC und habe die obigen Befehle ausprobiert. Es funktioniert einwandfrei (kein Fehler), aber ich sehe keine gemounteten Partitionen. Ich weiß, dass es raw
Partitionen in der eMMC-Partitionstabelle gibt, also ist es möglicherweise nicht möglich, alle Partitionen auf die gleiche Weise zu lesen. Meine Frage ist jedoch
Gibt es eine Möglichkeit, alle Partitionen im eMMC-Dump anzuzeigen und Daten daraus zu lesen?