Wie ziehe ich boot.img und recovery.img von Sony Xperia E4 Dual?

Ich habe gerade angefangen, mich für die Portierung von benutzerdefinierten ROMs auf ein Android-Gerät zu interessieren, und es erfordert, dass ich ein Backup/Dump von boot.img und recovery.img meines Geräts habe. Ich habe Sony Xperia E4 Dual (E2115).

Im Folgenden finden Sie Details zu meinem Gerät:

Kernel-Build: 24.0.B.5.14
Prozessor: MT6582
Board: arima82_w_s_kk
Android-Version: 4.4.4

/proc/dumchar_info:

Part_Name   Size    StartAddr   Type    MapTo
preloader    0x0000000000080000   0x0000000000000000   2   /dev/misc-sd
mbr          0x0000000000080000   0x0000000000000000   2   /dev/block/mmcblk0
ebr1         0x0000000000080000   0x0000000000080000   2   /dev/block/mmcblk0p1
pro_info     0x0000000000300000   0x0000000000100000   2   /dev/block/mmcblk0
nvram        0x0000000000500000   0x0000000000400000   2   /dev/block/mmcblk0
protect_f    0x0000000000a00000   0x0000000000900000   2   /dev/block/mmcblk0p2
protect_s    0x0000000000a00000   0x0000000001300000   2   /dev/block/mmcblk0p3
seccfg       0x0000000000020000   0x0000000001d00000   2   /dev/block/mmcblk0
uboot        0x0000000000080000   0x0000000001d20000   2   /dev/block/mmcblk0
ta           0x0000000000200000   0x0000000001da0000   2   /dev/block/mmcblk0
ltalabel     0x0000000001000000   0x0000000001fa0000   2   /dev/block/mmcblk0p4
fotakernel   0x0000000001400000   0x0000000002fa0000   2   /dev/block/mmcblk0
bootimg      0x0000000001400000   0x00000000043a0000   2   /dev/block/mmcblk0
sec_ro       0x0000000000600000   0x00000000057a0000   2   /dev/block/mmcblk0p5
misc         0x0000000000080000   0x0000000005da0000   2   /dev/block/mmcblk0
logo         0x0000000000300000   0x0000000005e20000   2   /dev/block/mmcblk0
ebr2         0x0000000000080000   0x0000000006120000   2   /dev/block/mmcblk0
expdb        0x0000000000080000   0x00000000061a0000   2   /dev/block/mmcblk0
tee1         0x0000000000080000   0x0000000006220000   2   /dev/block/mmcblk0
tee2         0x0000000000080000   0x00000000062a0000   2   /dev/block/mmcblk0
apps_log     0x0000000000800000   0x0000000006320000   2   /dev/block/mmcblk0p6
android      0x0000000083400000   0x0000000006b20000   2   /dev/block/mmcblk0p7
cache        0x000000000c800000   0x0000000089f20000   2   /dev/block/mmcblk0p8
usrdata      0x000000013a060000   0x0000000096720000   2   /dev/block/mmcblk0p9
bmtpool      0x0000000000000000   0xffffffffff3f00a8   2   /dev/block/mmcblk0
Part_Name:Partition name you should open;
Size:size of partition
StartAddr:Start Address of partition;
Type:Type of partition(MTD=1,EMMC=2)
MapTo:actual device you operate

Soweit ich weiß, ist Bootimg das, wonach ich suche. Ich habe die Größe und die Startadresse von Hex in Dezimal konvertiert und versucht, sie zu dumpen mit:

dd if=/dev/block/mmcblk0 of=/sdcard/boot.img bs=4096 skip=17312 count=5210

Aber wenn ich versuche, es mit unpackbootimg oder anderen Entpack-Tools zu entpacken, erhalte ich eine Fehlermeldung, die besagt, dass boot.img kein gültiges Boot-Image ist. Was fehlt mir hier?

Ich habe im Internet gesehen, dass Systemabbilder, die mit dd erstellt wurden , nicht gültig sind, aber dies ist bei Boot- und Wiederherstellungsabbildern nicht der Fall, und die Leute haben diese Partitionen mit dieser Methode erfolgreich gesichert. Ich verwende Ubuntu und würde gerne wissen, ob es andere Methoden gibt, um dies zu erreichen.

Können Sie die Ausgabe von hinzufügen ls -l /dev/block/platform/*/by-name/?
@MatthewRead Auf meinem Gerät gibt es keine solche Datei oder kein solches Verzeichnis.
Hmm vielleicht schau mal ob es sowas ähnliches gibt --find /dev -name "by-name"
echo $((0x0000000001400000/4096))= 5120nicht5210

Antworten (2)

Verwenden Sie dieses Tool, um
MTK Droid Tools Latest.zip von einem PC zu ziehen

Und für Android.. Verwenden Sie ein Backup-Tool wie Flashify im PlayStore

Flashify PlayStore-Link

und gehen Sie zu Sicherungen, Kernel und Wiederherstellung sichern.
Navigieren Sie dann zu Interner Speicher > Android > com.cgollner.flashify > Dateien > Sicherungen und kopieren Sie die Dateien ...

Diese Dateien können boot.emmc.win und recovery.emmc.win heißen.
Diese Dateien müssen in .img umbenannt werden und sie blinken. Auf meinem mtk funktioniert das ...

Ich habe MTK Droid-Tools von einer virtuellen Windows 7-Maschine aus ausprobiert. Da steht "Unbekannte ROM-Struktur, Backup NICHT möglich!" Auch Flashify ist in diesem Fall gescheitert. :'(

Sony boot.img-Dateien unterscheiden sich irgendwie von dem, was die meisten Programme, wie z. B. unmkbootimg und Variationen von unpack-bootimg, erwarten. Ich bin immer noch dabei, dieses gigantische Rätsel für mich zu lösen. Aber ich konnte boot.img vom Sony-Format in ein Standard-Android-boot.img-Format umpacken. Jetzt kann beispielsweise unmkbootimg es rückgängig machen. Magisk kann es jetzt auch patchen, um Root zu aktivieren.

Dazu benötigen Sie Android Image Kitchen

Nachdem Sie es haben, vorausgesetzt, es befindet sich im AIK-LinuxOrdner, führen Sie sudo AIK-Linux/repackimg.sh --local <path to boot.img>die Datei aus, die Sie mit dd erhalten haben. Dadurch wird ein neues boot.img erstellt, mit dem verwendet werden kannunmkbootimg

Einige Hintergrundinfos

Dabei gibt es ein gewisses Problem. Mein Telefon (Sony Xperia L 1 ) startet das nicht. Noch schlimmer! Es bootet nicht einmal die standardmäßige boot.img!

Ich habe kein Root, also konnte ich dd nicht verwenden. Ich habe stattdessen kernel.elf(boot.img) von der Firmware erhalten, die ich mit XperiFirm heruntergeladen habe. Aber der Versuch, es (ohne zu blinken) mit Fastboot zu booten, funktioniert nicht. Es schlägt mit einem Fehler fehl: FAILED (remote: 'invalid kernel & ramdisk address: images overlap')Das Booten des mit der Android Image Kitchen neu gepackten Images wirft keine Fehler. Aber mein Telefon bootet nicht und startet einfach neu.

PS Ich bin mir bewusst, dass diese Frage uralt ist.