Editando totalmente o sistema do celular
Advertências: Realizar os procedimentos descritos aqui pode colocar em risco o funcionamento de seu aparelho e inutilizá-lo permanentemente. Leia bem o procedimento e procure entender bem o que está fazendo antes de executá-lo. Não me responsabilizarei por nenhum dano causado ao aparelho. Façam por conta e risco.
Ainda, os moderadores tentarão (como sempre fizemos) ajudar ao máximo, mas sendo um tutorial altamente técnico, muitas dúvidas vão surgir que se relacionam muito mais ao Linux, ao Windows e a conceitos de informática. Por favor atenham-se a questões técnicas. Não teremos condições de ensinar ninguém do zero a usar estes programas e funções.
Prefácio:
O objetivo deste tutorial é ensinar uma técnica para ter total controle sobre o sistema do celular, realizar alterações diretamente no sistema de arquivos dando assim uma possibilidade infinita de modificação do A1200. Esta é a mesma técnica usada para se fazer versões novas de firmware.
Vale ressaltar também que este não é um tutorial “passo-a-passo” e sim um guia que tem o objetivo de passar o conhecimento que obtive a respeito da estrutura do celular, portanto este pode ser um texto longo e cansativo, se não estiver com disposição para ler, pare agora.
Recomendo um conhecimento bem fundamentado em linux para estar realizando essas modificações, isso facilitará muito e lhe dará uma gama incrível de possibilidades.
Estarei utilizando como exemplo o que foi discutido no tópico Somente usuários registrados podem ver links [Click aqui para se registrar gratuitamente], ensinarei como adicionar o “startup.txt” para celulares que não o tenham.
Pré-requisitos:
- Ter conhecimento de como atualizar o firmware utilizando RSD Lite, leia os tópicos a respeito. Entenda bem do assunto.
- Acesso ao celular via ssh/telnet (recomendado) ou eKonsole
- Programas anexados no tópico (EZX Codec, SBF Codec e RSD Lite)
Introdução
Existem duas formas de se fazer este procedimento, uma delas é quando você tem o firmware que está instalado no seu celular e, de preferência, que você mesmo tenha “flashiado” ele. A outra é quando você não tem, por exemplo, quando você está com firmware original. Estarei explicando esta diferença com mais detalhes adiante.
Entendendo o Firmware
Quando baixamos um firmware na internet, geralmente ele vem em um arquivo compactado, e dentro dele um arquivo .SBF, este arquivo que vai no RSD Lite para instalarmos.
Este .SBF é na verdade um pacote contendo vários Code-Groups (CG’s).
Um CG é um bloco de tamanho fixo contendo uma imagem, essas imagens nós chamamos de SMG’s
Vamos utilizar o SBF Codec e abrir um firmware qualquer com ele, vemos algo parecido com isso:
Explicando o que é cada um destes:
RDL3 – Este CG é um dos encarregados da parte de gravação do firmware, ele fornece o suporte para o celular gravar os CG’s > CG18
RDL1 – Este também é responsável pela gravação, porém é encarregado pelos CG0 até CG18.
CG0 até CG18 – Este grupo de CG’s são os “BaseBand Processor”, mais conhecido como BP. São instruções de baixo nível responsáveis pelo controle do celular e periféricos. Essa parte, se for flashiada, pode “matar” seu aparelho devido a incompatibilidade.
Esta parte pode ser removida do pacote .SBF junto com o RDL1, transformando assim a firmware em “Híbrida”.
CG31 até CG43 (ou CG44)– Estes CG’s são os “Application Processor”, ou AP. São eles que nós vamos mecher, editar e personalizar.
Application Processor
Os 3 primeiros, são componentes do kernel:
CG31 smth
CG32 blob
CG33 zImage
Os próximos são a estrutura de arquivos do celular, aqui que nós vamos brincar: Com exceção do CG39, são todos imagens do tipo CRAMFS.
CG34 /usr/data_resource
CG35 /ezx_user
CG36 /ezxlocal
CG37 /usr/securesetup
CG39 Imagem de Boot
CG41 /usr/language
CG42 /ezx_user/download/appwrite/setup
CG43 /
Porém, atenção a um detalhe muito importante, se sua firmware for H2 ou L4, essa história muda um pouquinho, o CG41 dessas firmwares, ou seja, o language, é dividido em 2, então ele ocupa o CG41 e CG42, consequentemente o o antigo CG42 (/ezx_user/download/appwrite/setup) passa a ser agora CG43, e o antigo CG43 (/) passa a ser CG44. observem:
Click this bar to view the full image.
![]()
Estrutura de Pastas
Aqui é necessário o mínimo conhecimento de linux, o CG43 representa o root, ou seja, o /, ele tem praticamente todas as pastas/subpastas do sistema, exceto pelas descritas acima.
Temos também os CG35, CG36 e CG42 não são read-only, ou seja, nestas pastas (/ezxlocal, /ezx_user e /ezx_user/download/appwrite/setup) nós conseguimos modifica-lás sem problema.
O CG39 é a imagem de boot, pode ser alterada diretamente pelo programa ezxcodec.
Então só nos resta o CG34, CG37, CG41, CG42 e CG43
Extraindo um SMG direto do celular
Agora que você já sabe dos componentes do firmware, precisamos ter um firmware base, o qual iremos alterar para estar modificando nosso A1200.
Aqui que entra aquela diferença, se você já tem um firmware que já foi instalado no seu celular, pule para o próximo tópico.
Quando apenas temos o firmware original, temos que extrair esta imagem do celular, para isso precisaremos do acesso ao aparelho por ssh ou eKonsole.
Digite o seguinte comando:
dd if=/dev/roflash of=/mmc/mmca1/CG43.bin
Este comando irá fazer uma cópia exata do /dev/roflash para o arquivo CG43.bin no seu cartão de memória. Esta operação poderá durar alguns minutos dependendo de qual CG você está estraindo.
Estamos extraindo o CG43 pois é nele que precisamos mecher para adicionar o startup.txt
Este /dev/roflash é um dispositivo que aponta para o lugar onde está gravado o CG43 no celular. Vai listar outros que eu conheço:
/dev/mtdblock8 CG35 /ezx_user
/dev/mtdblock9 CG36 /ezxlocal
/dev/roflash CG43 pasta /
/dev/roflash1 CG41 pasta /usr/language
/dev/roflash2 CG42 pasta /usr/data_resource (para C2 ou L7)
/dev/roflash3 CG43 pasta /ezx_user/download/appwrite/setup
/dev/roflash4 CG37 pasta /usr/securesetup
ATENÇÃO: Para o firmware H2 e L4 estes dispositivos podem mudar, não tenho um para testar mas digitando o comando “mount” via ssh ou no eKonsole ele vai mostrar uma lista onde vai ter maior parte dessas informações.
Extraindo um SMG do firmware
Este passo é para quem já tem o firmware, para os que utilizaram o passo anterior extraindo o arquivo pulem para o próximo tópico.
Para extrairmos o smg utilizaremos o EZX codec. Crie uma pasta e coloque o firmware dentro.
Abra o EZX codec.
Em “Working Directory” clique em “...” e escolha a pasta que você criou.
Vá na primeira aba, SBF, clique nos “...” e abra o arquivo do firmware.
Clique em Open
Irá aparecer um monte de CG’s, selecione apenas o que você quer modificar, no nosso caso o CG43 para podermos adicionar o startup.txt a pasta rc2.d.
Desmarque a opção “From CRAMFS too” e clique em Extract.
Uma pasta com o nome de smg será criada na pasta que você criou, dentro dela deverá ter um arquivo chamado CG43.smg
Trabalhando com o SMG
Se você estiver extraído o firmware do seu celular com “dd”, você deverá baixar um firmware QUALQUER para ser usado de base.
Antes de usar o SMG criado, faça um backup dele, pois se alguma alteração que você fizer bichar o celular, você refaz o flash com este backup.
Vá na guia CramFS, marque “Use Path”, clique nos “...” e localize o arquivo CG43.smg que você tem em mãos agora, (seja obtido do firmware ou do celular). Depois clique em Extract! E minimize.
Este procedimento criará uma pasta com nome de cramfs-root-CG43, contendo todo o conteúdo da imagem que extraímos, o nosso alvo aqui é a pasta cramfs-root-CG43\etc\rc.d\rc2.d
Pegue o arquivo anexado S81autorun.rar e descompacte-o nesta pasta rc2.d
Volte ao EZX Codec, ainda na aba CramFS, em New CrasmFs File, digite o nome do novo SMG para ser salvo e clique em Compile.
Isso irá gerar um novo arquivo .smg, reserve-o.
Abra agora o SBF Codec, nele carregue uma firmware qualquer, isso irá mostrar um monte de code-groups, remova TODOS, exceto o RDL3 e o CG43 (pois é ele que queremos editar).
Depois selecione o CG43 e clique em Replace, escolha o SMG novo que salvamos.
Clique em Salvar
Isso irá gerar um arquivo .SBF Final, utilize o RSD Lite para flashia-lo
Espero que tenha ficado de bom entendimento este manual. Qualquer crítica ou sugestão será muito bem vinda!
Conclusão
O que fizemos aqui foi pegar uma imagem atual do CG43 do nosso celular, extraí-lo e adicionar um arquivo S81autorun a pasta /etc/rc.d/rc2.d, depois re-compactamos, e imbutimos ele em um pacote SBF de firmware, possibilitando assim flashiar apenas a parte alterada e fazendo com que a única mudança no celular seja o arquivo que adicionamos na imagem.Somente usuários registrados podem ver links [Click aqui para se registrar gratuitamente]





Responder com Citação



Favoritos