Como customizar sua ROM Android

Nesse artigo, vamos aprender como o sistema Android lida com as partições e vamos aprender como podemos montá-las dentro do ambiente GNU/Linux, afim de fazer modificações. Nós vamos remover Bloatware, serviços do Google e bloquear propagandas, num processo que chamamos de customização de ROM. Divirta-se!

[ Hits: 45.270 ]

Por: Cézar Augusto em 01/12/2020 | Blog: https://www.cezarcampos.com.br/


Como montar as partições do Android



A partições do Android são, em sua maioria, imagens esparsas de algum sistema de arquivos EXT4. O Android, quando inicia, monta as partições a partir de blocos que são arquivos de imagem somente leitura, elas permanecem assim pelo resto da vida, a não ser que o fabricante torne a modificá-los através de alguma atualização ou o usuário instale uma ROM customizada.

Algumas partições podem conter arquivos TAR, ao invés de um sistema de arquivos, como mostrado no artigo:
Mas por quê as imagens são esparsas? A ideia por trás disso é economizar espaço, visto que o armazenamento de memória nos celulares é muito limitado. Os Bytes vazios são cortados e o tamanho da imagem só aumenta conforme o usuário adiciona dados ao aparelho, consumindo apenas o espaço guardado nele, isso no caso da partição de dados que é dinâmica.

Para montar uma imagem esparsa no Linux, você primeiro tem que converter ela para uma imagem crua e depois montá-la. Note que depois da conversão, o arquivo de imagem vai mostrar o seu real tamanho.

Download da stock ROM

Primeiro, baixe a ROM original do seu aparelho no site da Samsung, pesquise pelo modelo do celular, país e operadora. Os sites onde você pode baixar são esses, mas podem haver muitos outros também:
Após descompactar o arquivo ".zip", você vai ver que os arquivos terminam com ".tar".md5. Você pode verificar a integridade deles com essa dica:
Se pular a verificação, então descompacte os arquivos com qualquer programa de sua preferência. Se a ROM tiver comprimida com LZ4, instale o seguinte pacote para descomprimi-lo:

# apt install liblz4-tool

E depois, para descomprimir:

lz4 -d seu_arquivo_compactado.lz4

Após descomprimir todos os arquivos, você terá agora uma pasta cheia de binários. Eu recomendo criar uma pasta separada só para guardá-los, para fins de organização.
Linux: Como customizar a sua ROM Android
Eu chamei esta pasta de "stock" pois é aonde vão ficar os arquivos originais sem modificação, caso alguma coisa dê errado nós teremos um becape.

Crie uma outra pasta para guardar os seus arquivos modificados, afim de não se perderem. Na imagem abaixo, pode-se notar que eu criei outra pasta chamada "modified", pois é onde vão ficar os arquivos do Android modificado.
Linux: Como customizar a sua ROM Android

Com o terminal aberto nesta pasta, vamos converter a imagem do sistema Android para um formato que o Linux "possa entender":

simg2img ./stock/system.img ./modified/system.raw

Entre na pasta "modified" e monte a imagem do sistema como usuário root:

cd modified
mkdir system
sudo mount ./system.raw ./system/

Agora, nós temos a imagem do sistema montada na pasta "system" do nosso diretório de ROMs customizadas, dentro dela podemos fazer virtualmente qualquer coisa.

Vamos montar a partição product:

mkdir product
simg2img ../stock/product.img product.raw
sudo mount ./product.raw ./product/

Pronto, agora vamos começar a customização na próxima página.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Como montar as partições do Android
   3. Como remover Bloatwares
   4. Bloqueio de propagandas e malware
   5. Instalando o Aurora Services
   6. Como reempacotar sua ROM
   7. Resultado e Instalação
Outros artigos deste autor

Como Modificar a Tela do Bootloader do Android

E a guerra contra bots continua

Como Desbloquear o Bootloader em Celulares Samsung

Instalando o Adminer, do jeito certo, no Debian

Computador e Placas Antigas Nvidia em Pleno 2019

Leitura recomendada

Segurança no Android

ARCore: SDK para realidade aumentada da Google

KaiOS: A ressurreição do FirefoxOS e o fim da segregação digital

Processing - Interagindo com o usuário

Android Things - Aplicativos IoT padronizado para Indústria 4.0

  
Comentários
[1] Comentário enviado por fabio em 01/12/2020 - 11:25h

Excelente trabalho, meus parabéns!

[2] Comentário enviado por maurixnovatrento em 01/12/2020 - 12:44h


Excelente.

___________________________________________________________
[code]Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento [/code]

[3] Comentário enviado por cizordj em 02/12/2020 - 09:54h

Obrigado

[4] Comentário enviado por MiccoXW em 03/12/2020 - 13:41h

Queria muito customizar, mas o medo do celular ficar inutilizável é maior kkkk

[5] Comentário enviado por albfneto em 03/12/2020 - 15:49h

Olha, eu gostei e favoritei!
vc consegue sem o celular ser "rooted"?
isso funciona num android antigo, android 6?

¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨
Albfneto,
Ribeirão Preto, S.P., Brasil.
Usuário Linux, Linux Counter: #479903.
Distros Favoritas: [i] Sabayon, Gentoo, OpenSUSE, Mageia e OpenMandriva[/i].

[6] Comentário enviado por leandropscardua em 04/12/2020 - 20:02h

Interessante e motivador! Uma sugestão de artigo futuro é como dar "saída" em dispositivos antigos. Tipo instalar nova rom num galaxy pocket ou num galaxy tab7. Os devices antigos ficam abandonados coitados!

[7] Comentário enviado por cizordj em 04/12/2020 - 20:28h


[5] Comentário enviado por albfneto em 03/12/2020 - 15:49h

Olha, eu gostei e favoritei!
vc consegue sem o celular ser "rooted"?
isso funciona num android antigo, android 6?

Hmmm, nos Androids mais antigos é meio diferente a parada, se eu não me engano existe um negócio chamado CF auto root onde você tem que instalar dois arquivos e um deles é responsável por desbloquear o bootloader e o outro é o que faz root no aparelho, no caso né... Se você tivesse esses dois arquivos você só teria que desbloquear o bootloader e não usar o outro arquivo, depois que tiver o bootloader desbloqueado você pode partir pro abraço e customizar a partição do sistema.

O máximo que vai acontecer no teu caso é o aparelho rejeitar a instalação do sistema e te obrigar a reinstalar tudo de novo o sistema original de fábrica. Tenha sempre um becape!

[8] Comentário enviado por cizordj em 04/12/2020 - 20:34h


[6] Comentário enviado por leandropscardua em 04/12/2020 - 20:02h

Interessante e motivador! Uma sugestão de artigo futuro é como dar "saída" em dispositivos antigos. Tipo instalar nova rom num galaxy pocket ou num galaxy tab7. Os devices antigos ficam abandonados coitados!


Concordo, o jeito é instalar uma custom ROM nesses aparelhos, pra isso dar certo você tem que procurar no fórum do Xda-developers pelo modelo exato e ver se alguém já fez isso por você, nunca se sabe, lá pode ter uma ROM maravilhosa feita por um desenvolvedor sério mas também pode não ter nada.

[9] Comentário enviado por Alannah358 em 07/01/2021 - 05:59h

Thank you for sharing. https://mcdvoice.me/

[10] Comentário enviado por MiccoXW em 13/01/2021 - 12:53h

Tem duas pastas meta-data, uma no AP e outra no CSC, qual delas eu devo colocar na pasta principal?

[11] Comentário enviado por cizordj em 23/03/2021 - 07:40h


[10] Comentário enviado por MiccoXW em 13/01/2021 - 12:53h

Tem duas pastas meta-data, uma no AP e outra no CSC, qual delas eu devo colocar na pasta principal?

Ignore-as, essas pastas são usadas pelo Odin na hora da instalação da ROM. As únicas coisas que importam mesmo são os arquivos de imagem,


[12] Comentário enviado por omicael em 19/04/2021 - 23:53h

Já baixei a ROM de vários sites, mas não tem esse product.img (ROM do Galaxy J4). Tem como continuar ou é o sinal de que meu celular não aceita modificação?

[13] Comentário enviado por boinaverde22 em 02/07/2021 - 10:35h

Olá, Parabéns, Belo Post!
Estou tendo problemas para gerar as imagens na pasta Modified (que transformei em StockRom_Mod por originalidade rsrs). Esta é a saída no meu terminal:

$ simg2img ./StockRom/system.img ./Sto^CRom_Mod/system.raw
Cannot open output file ./StockRom_Mod/system.raw

Verifiquei se os nomes estavam certos, neste caso positivo, estão certos. Mas paro nesta parte do tutorial.
Obrigado!

P.s.: o arquivo de imagem esta com extensão .ext4, então renomeei para .img (originalmente system.img.ext4)


[14] Comentário enviado por cizordj em 28/09/2022 - 08:20h


[12] Comentário enviado por omicael em 19/04/2021 - 23:53h

Já baixei a ROM de vários sites, mas não tem esse product.img (ROM do Galaxy J4). Tem como continuar ou é o sinal de que meu celular não aceita modificação?

Podes continuar, o esquema de partição muda bastante de celular para celular.

[15] Comentário enviado por cizordj em 28/09/2022 - 08:23h


[13] Comentário enviado por boinaverde22 em 02/07/2021 - 10:35h

Olá, Parabéns, Belo Post!
Estou tendo problemas para gerar as imagens na pasta Modified (que transformei em StockRom_Mod por originalidade rsrs). Esta é a saída no meu terminal:

$ simg2img ./StockRom/system.img ./Sto^CRom_Mod/system.raw
Cannot open output file ./StockRom_Mod/system.raw

Este comando foi um erro de digitação ou você fez de propósito? Tente ver se pelo menos se o seu usuário possui permissões de escrita na pasta StockRom_Mod e se ainda der erro crie um arquivo vazio e tente novamente:

$ touch StockRom_Mod/system.raw
$ simg2img ./StockRom/system.img ./StockRom_Mod/system.raw


[16] Comentário enviado por Dawson6358 em 07/11/2022 - 02:41h



[17] Comentário enviado por Dawson6358 em 07/11/2022 - 02:42h


Same issue here and I can't find any methods.

[18] Comentário enviado por willium532 em 09/11/2022 - 00:40h


Notwithstanding, you should focus in on a piece of this stuff.
https://www.my-ascension.com/

[19] Comentário enviado por FranklinSD em 21/11/2022 - 02:45h



Thanks for sharing. I found a lot of interesting information here.

https://www.tellhappystar.net/

[20] Comentário enviado por William98125 em 23/11/2022 - 05:56h

Hello you have picked very interesting topic about customization of android ROM but sir I can't implement it .
so please someone can guide me again .

https://www.mybkexperience.one

[21] Comentário enviado por FrankD1 em 29/11/2022 - 08:07h


That's great. I was impressed by your writing. I am happy to see such a topic. Please come to my blog and read it.


https://www.mykplan.me/

[22] Comentário enviado por Geraldpennington em 07/12/2022 - 02:03h


Thanks for sharing that..

https://www.monkey.vin/

[23] Comentário enviado por thatininge em 23/03/2023 - 02:59h


[17] Comment Submitted By Dawson6358 On 11/07/2022 - 02:42 AM


Same issue here and I can't find any methods. I highly appreciate your hard-working skills as the post you published have some great information which is quite beneficial for me https://www.checkmyrota.net/




[24] Comentário enviado por taradean em 03/04/2023 - 08:58h

Thanks for the information.. https://www.mygeorgiasouthern.net/

[25] Comentário enviado por Georgia69 em 22/04/2023 - 07:34h

Keep it concise: Long comments can be difficult to read and may not be fully appreciated by other readers. Try to keep your comments concise and to the point. https://www.etenet.biz/

[26] Comentário enviado por Abnerpp em 28/06/2023 - 12:29h


Da para conseguir instalar uma rom de linux, excluindo o sistema original? Fazendo o aproveitamento somente do KERNEL.....?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts