Я только начал интересоваться переносом пользовательского ПЗУ на устройство Android, и для этого мне требуется резервная копия / дамп boot.img и recovery.img моего устройства. У меня Sony Xperia E4 Dual (E2115).
Ниже приведены подробности о моем устройстве:
Сборка ядра: 24.0.B.5.14
Процессор: MT6582
Плата: arima82_w_s_kk
Версия Android: 4.4.4
/proc/думчар_инфо:
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
Насколько я знаю, bootimg - это то, что я ищу. Я преобразовал размер и начальный адрес из шестнадцатеричного в десятичный и попытался сбросить его, используя:
dd if=/dev/block/mmcblk0 of=/sdcard/boot.img bs=4096 skip=17312 count=5210
Но когда я пытаюсь распаковать его с помощью unpackbootimg или других инструментов для распаковки, я получаю сообщение об ошибке, указывающее, что boot.img не является допустимым загрузочным образом. Что мне здесь не хватает?
Я видел в Интернете, что образы системы, созданные с помощью dd , недействительны, но это не относится к образам загрузки и восстановления, и люди успешно сбрасывали эти разделы, используя этот метод. Я использую Ubuntu и хотел бы знать, есть ли другие способы добиться этого.
Используйте этот инструмент для извлечения из ПК
MTK Droid Tools Latest.zip
И для Android. Используйте инструмент резервного копирования, такой как Flashify в PlayStore.
Ссылка на Flashify в PlayStore
и перейдите к резервным копиям, резервному копированию ядра и восстановлению.
Затем перейдите во внутреннее хранилище> android> com.cgollner.flashify> файлы> резервные копии и скопируйте файлы …
Эти файлы могут называться boot.emmc.win и recovery.emmc.win,
Эти файлы нужно переименовать в .img и они прошиваются.. На моем мтк это работает...
Файлы Sony boot.img каким-то образом отличаются от того, что большинство программ, таких как unmkbootimg и варианты unpack-bootimg, ожидают от них. Я все еще в процессе решения этой гигантской загадки для себя. Но я смог перепаковать boot.img из формата Sony в стандартный формат android boot.img. Теперь unmkbootimg, например, умеет его разбирать. Теперь Magisk также может исправить его, чтобы включить root.
Для этого вам понадобится Android Image Kitchen.
После того, как он у вас есть, если он находится в AIK-Linux
папке, запустите sudo AIK-Linux/repackimg.sh --local <path to boot.img>
файл, который вы получили с помощью dd. Это создаст новый boot.img, который можно использовать сunmkbootimg
Немного справочной информации
В этом есть определенная проблема. Мой телефон (Sony Xperia L 1 ) не загружается. Еще хуже! Даже стоковый boot.img не загружается!
У меня нет рута, поэтому я не мог использовать dd. Я получил kernel.elf(boot.img) из прошивки, которую скачал с помощью XperiFirm. Но попытка загрузить его (без перепрошивки) с помощью fastboot не работает. Это завершается с ошибкой: FAILED (remote: 'invalid kernel & ramdisk address: images overlap')
загрузка образа, перепакованного с помощью Android Image Kitchen, не вызывает никаких ошибок. Но мой телефон не загружается и просто перезагружается.
PS Я прекрасно понимаю, что этот вопрос древний.
Мэтью Рид
ls -l /dev/block/platform/*/by-name/
?2ndGenCore_i5
Мэтью Рид
find /dev -name "by-name"
Чарли Горичаназ
echo $((0x0000000001400000/4096))
=5120
нет5210