Meus votos vão para @Naftuli Kay e outras respostas úteis aqui, mas tenho algumas informações que gostaria de compartilhar. É muito longo para um comentário, que seja uma resposta então.
Desde algumas versões do TWRP, há o item 'formatar dados' na tela Limpar. Ele não apenas limpa / partição de dados, mas também lida com o problema do FS criptografado. No meu caso, o TWRP 3.0.2 no Samsung J500H limpa a criptografia e foi a única maneira de a redefinição de fábrica não funcionar. O CMR (aquele que está sendo construído ao longo do meu CM 12.1 rom para J500H) também não pode limpar a criptografia.
--set_encrypted_filesystem=off
também não funcionou no TWRP e CMR.
limpar dados via OpenRecoveryScript https://twrp.me/faq/openrecoveryscript.html também não funciona
O Android 3.0 começou a mapear / sdcard para / data / media, então eles tiveram que retrabalhar / limpar os dados para not / data / media e, rm -rf
em vez disso , são executados. Veja https://twrp.me/faq/datamedia.html para mais detalhes.
Ao executar 'formatar dados', você pode ver no log de recuperação (/ cache / recover / log ou / cache / recovery / last_log) as seguintes informações:
I:Successfully wiped crypto footer.
antes de formatar / dados com make_ext4fs
. O código TWRP possui várias verificações para descobrir onde está o cabeçalho LUKS e, no meu caso, ele foi encontrado no rodapé.
Eu olhei para a fonte TWRP e não encontrei uma maneira de 'formatar dados' na linha de comando (eu preciso limpar o armazenamento criptografado de um aplicativo na ROM personalizada), portanto, essa opção está presente apenas na interface do usuário. Com a única exceção - se TWRP é compilado com TW_OEM_BUILD
Permitiu então vontade 'formatar dados' em reposição de fábrica, limpando cabeçalho de criptografia e de formatação partição de dados, caso contrário, seria o uso regular limpe w / o formatação.
Vou tentar dd
com zeros, na verdade o TWRP faz o mesmo para limpar a criptografia, apenas sabe onde procurar exatamente o cabeçalho))