Achei num site russo especializado em telefones chineses um programa para fazer backup dos arquivos do sistema Android de celulares baseados no chip MT6516. É um aplicativo para rodar scripts shell do Linux, mais um script shell que automatiza todo o processo de cópia. Extraí as pastas deste ZIP e copiei-a para o cartão SD. Pelo gerenciador de arquivos do celular, entrei na pasta do programa e executei-o para instalá-lo. A seguir, adicionei o script ao programa. O script é este:
# CreateDir mkdir /sdcard/backup_ # ddImage dd if=/proc/mtd of=/sdcard/backup_/firmware.info dd if=/dev/mtd/mtd0 of=/sdcard/backup_/preloader.img dd if=/dev/mtd/mtd1 of=/sdcard/backup_/nvram.img dd if=/dev/mtd/mtd2 of=/sdcard/backup_/seccnfg.img dd if=/dev/mtd/mtd3 of=/sdcard/backup_/uboot.img dd if=/dev/mtd/mtd4 of=/sdcard/backup_/boot.img dd if=/dev/mtd/mtd5 of=/sdcard/backup_/recovery.img dd if=/dev/mtd/mtd6 of=/sdcard/backup_/secstatic.img dd if=/dev/mtd/mtd7 of=/sdcard/backup_/misc.img dd if=/dev/mtd/mtd10 of=/sdcard/backup_/logo.img dd if=/dev/mtd/mtd11 of=/sdcard/backup_/expdb.img mount -o remount,rw -t yaffs2 /dev/block/mtdblock8 /system cat /sdcard/Install/BackUp/yaffs_back_2.2/gen/mkyaffs2image > /system/bin/mkyaffs2image chmod 4777 /system/bin/mkyaffs2image /system/bin/mkyaffs2image /system /sdcard/backup_/system.img /system/bin/mkyaffs2image /cache /sdcard/backup_/cache.img /system/bin/mkyaffs2image /data /sdcard/backup_/data.img
Modifiquei um pouco este script para gerar arquivos com nomes adequados ao celular Wei Dream (preloader_bird16_a10y.bin, uboot_bird16_a10y.bin) e para dar mensagens mais descritivas do que está acontecendo. Executei este script (dando as permissões de root) e, depois de vários minutos trabalhando, aparece a mensagem “Tudo feito”, conforme indica a imagem abaixo.
O comando “dd” faz uma cópia bruta dos dados da memória flash. Depois de gerados estes arquivos, copiei-os para o PC e usei o MTK ROM Studio para eliminar dados desnecessários e deixar as ROMs no formato certo para ser reflashado de volta ao Wei Dream. Este programa também gera o arquivo scatter, usado para indicar as posições de memória em que os arquivos serão gravados. O MTK ROM Studio foi criado pelo russo linerty, talvez o maior hacker de MT6516 do mundo.
O interessante destas informações é que o script acaba informando sobre a estrutura das ROM e de arquivos do sistema. Segundo linerty, a estrutura das ROM de sistema é a seguinte, em tradução livre do russo:
Nem todos estes arquivos são necessários para se reflashar com sucesso o Wei Dream.
A estrutura de arquivos também é indicada no log de boot, recuperado com o comando dmesg dentro do shell Android:
<5>[ 1.055415] Creating 13 MTD partitions on "MT6516-Nand": <5>[ 1.056125] 0x000000000000-0x000000020000 : "preloader" <5>[ 1.058539] 0x000000020000-0x000000320000 : "nvram" <5>[ 1.060678] 0x000000320000-0x000000340000 : "seccnfg" <5>[ 1.062672] 0x000000340000-0x0000003a0000 : "uboot" <5>[ 1.064665] 0x0000003a0000-0x0000009a0000 : "boot" <5>[ 1.066647] 0x0000009a0000-0x000000fa0000 : "recovery" <5>[ 1.068716] 0x000000fa0000-0x0000010c0000 : "secstatic" <5>[ 1.070895] 0x0000010c0000-0x000001120000 : "misc" <5>[ 1.072997] 0x000001120000-0x00000bb20000 : "system" <5>[ 1.075592] 0x00000bb20000-0x00000f720000 : "cache" <5>[ 1.077709] 0x00000f720000-0x00000fa20000 : "logo" <5>[ 1.079599] 0x00000fa20000-0x00000fac0000 : "expdb"
O comando “cat /proc/partitions” revela o tamanho das partições em número de blocos:
# cat /proc/partitions major minor #blocks name 31 0 128 mtdblock0 31 1 3072 mtdblock1 31 2 128 mtdblock2 31 3 384 mtdblock3 31 4 6144 mtdblock4 31 5 6144 mtdblock5 31 6 1152 mtdblock6 31 7 384 mtdblock7 31 8 174080 mtdblock8 31 9 61440 mtdblock9 31 10 3072 mtdblock10 31 11 640 mtdblock11 31 12 267520 mtdblock12 179 0 1966080 mmcblk0 179 1 1707008 mmcblk0p1 179 2 258048 mmcblk0p2
E o comando “cat /proc/mounts” descreve os tipos de sistemas de arquivos e parâmetros de montagem:
# cat /proc/mounts rootfs / rootfs ro,relatime 0 0 tmpfs /dev tmpfs rw,relatime,mode=755 0 0 devpts /dev/pts devpts rw,relatime,mode=600 0 0 proc /proc proc rw,relatime 0 0 sysfs /sys sysfs rw,relatime 0 0 tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0 /dev/block/mtdblock8 /system yaffs2 ro,relatime 0 0 /dev/block/mtdblock12 /data yaffs2 rw,nosuid,nodev,relatime 0 0 /dev/block/mtdblock9 /cache yaffs2 rw,nosuid,nodev,relatime 0 0 /dev/block/mtdblock6 /system/secro yaffs2 ro,relatime 0 0 /dev/block/vold/179:1 /mnt/sdcard vfat rw,dirsync,nosuid,nodev,noexec,relatime,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount ro 0 0 /dev/block/vold/179:1 /mnt/secure/asec vfat rw,dirsync,nosuid,nodev,noexec,relatime,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0 tmpfs /mnt/sdcard/.android_secure tmpfs ro,relatime,size=0k,mode=000 0 0
Com estas informações, posso recriar o firmware de um smartphone Android MT6516 a partir do despejo (dump) da ROM (Read Only Memory). A receita de bolo é a seguinte:
Entre no Modo Engenheiro do Wei Dream discando *#*#3646633#*#* (não é preciso clicar no telefonezinho). Podem ser configurados muitos ajustes de hardware neste modo. Incluindo desconfigurar tudo…
Use por sua conta e risco. Não nos responsabilizamos por quaisquer danos ao seu celular.
Colheita de soja. Foto: Wenderson Araujo/Trilux Fotógrafos de mídias rurais já perderam a conta das…
João Batista MezzomoAuditor fiscal O que está por trás de tudo o que está acontecendo…
A.k.a. "SexyCyborg". A mulher do século 21. Naomi Wu testa seu iluminador de implantes na…
A principal ferramenta do jornalista de dados é a planilha, tipo LibreOffice Calc, M.S. Excel…
Rita Almeida, 9 de março de 2019 Psicóloga Rita Almeida: não delirantes, mas deliroides. Não…
Rafael Azzi5 de outubro de 2018 Você se pergunta como um candidato com tão poucas…
View Comments
En este caso estan todas las direcciones correlativas. Sin embargo yo tengo un mtk6577 que el preloader y dsp_bl tienen ubicacion dev/misc.sd y no se como extraerlas, pues me da error al extraer con flashtool. Me sabrias explicar como extraerlas. Gracias
preloader 0x0000000000040000 0x0000000000000000 2 /dev/misc-sd
dsp_bl 0x00000000005c0000 0x0000000000040000 2 /dev/misc-sd
mbr 0x0000000000004000 0x0000000000000000 2 /dev/block/mmcblk0
ebr1 0x000000000005c000 0x0000000000004000 2 /dev/block/mmcblk0p1
pmt 0x0000000000400000 0x0000000000060000 2 /dev/block/mmcblk0
nvram 0x0000000000300000 0x0000000000460000 2 /dev/block/mmcblk0
seccfg 0x0000000000020000 0x0000000000760000 2 /dev/block/mmcblk0
uboot 0x0000000000060000 0x0000000000780000 2 /dev/block/mmcblk0
bootimg 0x0000000000600000 0x00000000007e0000 2 /dev/block/mmcblk0
recovery 0x0000000000600000 0x0000000000de0000 2 /dev/block/mmcblk0
sec_ro 0x0000000000600000 0x00000000013e0000 2 /dev/block/mmcblk0p5
misc 0x0000000000060000 0x00000000019e0000 2 /dev/block/mmcblk0
logo 0x0000000000300000 0x0000000001a40000 2 /dev/block/mmcblk0
expdb 0x00000000000a0000 0x0000000001d40000 2 /dev/block/mmcblk0
ebr2 0x0000000000004000 0x0000000001de0000 2 /dev/block/mmcblk0
android 0x0000000020100000 0x0000000001de4000 2 /dev/block/mmcblk0p6
cache 0x0000000020100000 0x0000000021ee4000 2 /dev/block/mmcblk0p2
usrdata 0x0000000040100000 0x0000000041fe4000 2 /dev/block/mmcblk0p3
fat 0x00000000662fc000 0x00000000820e4000 2 /dev/block/mmcblk0p4
bmtpool 0x0000000000a00000 0x00000000ff9f0050 2 /dev/block/mmcblk0
Olá, Tonio!
Veja como extrair em http://forum.china-iphone.ru/viewtopic.php?p=509017. TRaduza com o Google Translator.
Olá amigo dê uma olhada neste "Tutorial Trocar Memória Interna Pela Externa A9330 e A9550!!" e me diga o se o vold.fstab deles está faltando algo para funcionar no meu MT6573
Olá, Pedro!
Não conhecia este procedimento. Vou tentar um dia destes.
Bom dia amigo! Encontrei um tutorial que pode resolver a minha situação. Mas não deu certo aqui com o MT6573. O que acha?
Qual o link do tutorial?
Olá amigo! Sabes fazer o mesmo com o android 4.0.3 MT6573?
Olá, Pedro!
O procedimento é parecido. Olhe o site russo para ver o procedimento.
Bom dia! O senhor tem o link?
Tens algum tutorial para dar boot pelo SDcard?
O link está ali no final da matéria. Não sei como dar o boot pelo SD, mas disassemblei o bootloader e estou estudando. Talvez descubra alguma coisa.
Ok Meu amigo, aguardo ansioso, já revirei a internet. E nada satisfatório. Meu android usa BB chip: MT6573 model: yusu B920. Grande abraço e meus parabéns pelo blog.
Valeu, Pedro!
Bom dia, desta maneira também é possível recuperar um Wei que está "Brickado"?
Olá, Rafael!
Talvez seja possível recuperar. Eu recuperei o meu com o cabo serial que mostro em outro artigo.