Saltar para conteúdo


Foto
- - - - -

Como efectuar um backup da partição /efs e para que serve?


  • Por favor inicie sessão para responder
28 respostas a este tópico

#1 on.one

on.one

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 5169 mensagens
  • LocalizaçãoAlfragide

Mensagem publicada 24 November 2012 - 23:06

Como efectuar um backup da partição /efs e para que serve?

Um backup da partição /efs serve para numa eventualidade de um mau flash, fruto de alguma situação inesperada ou até fruto de alguma falha no software, seja possível recuperar uma das partes mais sensíveis de qualquer equipamento.
Na partição /efs está contida a informação do IMEI e outras informações que sem as quais o telefone não consegue funcionar de forma adequada. Por exemplo, sem IMEI o telefone não se consegue ligar à rede.

A ideia deste tutorial, surge depois de ainda à pouco dias me ter acontecido a mim próprio ao aplicar uma rom que havia compilado. Estava eu a aplicar o ficheiro da rom via TWRP recovery e ao fazer boot verifiquei que não me conseguia ligar à rede e não tinha IMEI.
Nessa altura eu não tinha qualquer backup da minha partição /efs.

Não quero que fiquem com a ideia que a culpa foi da TWRP recovery ou que não se deve usar, estas coisa sucedem e pronto. Aliás é com a ajuda da TWRP recovery que vamos efectuar o backup da partição /efs.
A TWRP recovery permite efectuar a ligação adb com permissões root enquanto está a ser executada e é por esse motivo que a vamos usar.

Procedimento para efectuar o backup da partição /efs:

- Efectuar o download da TWRP 2.3.2.1
- Colocar o telefone em modo fastboot (VolumeUP+VolumeDOWN+POWER)
- Executar os seguintes comandos:

- fastboot boot openrecovery-twrp-2.3.2.1-maguro.img

( depois de a TWRP estar activa )

- adb shell

- dd if=/dev/block/platform/omap/omap_hsmmc.0/by-name/efs of=/sdcard/efs.img bs=1024

( no sdcard irá aparecer um ficheiro com aproximadamente 20 MB com nome efs.img. Devem guardar em local seguro este ficheiro. )

- sync

- Efectuar reboot na TWRP

Na eventualidade de este problema vós surgir, eu recomendo o procedimento que efectuei, ou seja, tentar recuperar via a factory image. Podem seguir este tutorial.

No meu caso a reposição da factory image resolveu o problema, no entanto, se depois da reposição da factory image o problema persistir, então é altura para usar o referido backup da /efs.

Como restaurar a partição /efs a partir de um backup:

- Efectuar o download da TWRP 2.3.2.1
- Colocar o telefone em modo fastboot (VolumeUP+VolumeDOWN+POWER)
- Executar os seguintes comandos:

- fastboot boot openrecovery-twrp-2.3.2.1-maguro.img

( depois de a TWRP estar activa )

- adb shell

- dd if=/sdcard/efs.img of=/dev/block/platform/omap/omap_hsmmc.0/by-name/efs bs=1024

- sync

- Efectuar reboot na TWRP

Se tudo correu bem a partição /efs ficou restaurada com sucesso.

Editado por on.one, 24 November 2012 - 23:09.

  • Magic, pmvalente, Dark_Sorcerer e 2 outros gostam disto

Nexus 6 - Stock Android 6.0.1 (MMB29K), no userdata encription, display @ 1080p.


#2 Coubacias

Coubacias

    Fã de Android

  • Membros
  • PipPipPip
  • 324 mensagens
  • LocalizaçãoViseu
  • Samsung Galaxy Nexus GT I9250

Mensagem publicada 25 November 2012 - 10:34

Boas!

Isso depois de instalar vai substituir a CWM recovery?

cumps
Samsung Galaxy Nexus GT-I9250
One.pt.aosp.nexus.jro03L.v.1.6.2 - jelly bean 4.1.1

#3 pmvalente

pmvalente

    Membro

  • Membros
  • PipPip
  • 233 mensagens

Mensagem publicada 25 November 2012 - 11:06

E pode fazer falta.....
Obrigado ONE.

Computers (and tablets and phones) are like air conditioners, they stop working properly if you open Windows.
Nexus 7 16GB - stock rom / rooted
Samsung S4 - stock rom / rooted


#4 Dark_Sorcerer

Dark_Sorcerer

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 2767 mensagens
  • hammerhead

Mensagem publicada 25 November 2012 - 13:06

Alo on.one,

Qual é a diferença entre esse procedimento e, num terminal emulator, fazer:

tar czvf /sdcard/efs.tgz /factory/* (para além, naturalmente, do output final ser um .tar) ou

ddif=/dev/block/platform/omap/omap_hsmmc.0/by-name/efs of=/sdcard/efs.img ?

Desculpa as perguntas de noob.

Obrigado!

Um abraço,

Editado por Dark_Sorcerer, 25 November 2012 - 13:07.

Chat do fórum: http://l.androidpt.com/chat

#5 on.one

on.one

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 5169 mensagens
  • LocalizaçãoAlfragide

Mensagem publicada 25 November 2012 - 13:20

Boas!

Isso depois de instalar vai substituir a CWM recovery?

cumps

Boa tarde,

Esqueci de referir que o comando :

fastboot boot openrecovery-twrp-2.3.2.1-maguro.img

não apaga ou substitui nenhuma recovery já instalada, apenas faz o boot da referida recovery.

Um abraço.

Nexus 6 - Stock Android 6.0.1 (MMB29K), no userdata encription, display @ 1080p.


#6 on.one

on.one

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 5169 mensagens
  • LocalizaçãoAlfragide

Mensagem publicada 25 November 2012 - 14:40

Alo on.one,

Qual é a diferença entre esse procedimento e, num terminal emulator, fazer:

tar czvf /sdcard/efs.tgz /factory/* (para além, naturalmente, do output final ser um .tar) ou

ddif=/dev/block/platform/omap/omap_hsmmc.0/by-name/efs of=/sdcard/efs.img ?

Desculpa as perguntas de noob.

Obrigado!

Um abraço,

Boa tarde,

Neste caso a partição /efs é uma partição read-only e não há o risco de ser modificada enquanto se executa o backup.
Quando isso não sucede é boa prática que o backup da partição seja feito enquanto a mesma não esteja "montada" no sistema.
O comando que sugeriste, efectua na realidade também um backup da partição /efs que pode ser reposto em caso de necessidade.
No entanto quanto a partição fica corrompida um backup dessa natureza não é o suficiente, porque de pouco serve colocar informação numa partição em que a sua estrutura não é consistente.
Assim, a solução é ter um backup que represente toda a estrutura da partição e sua informação.
Espero ter sido explicito.

Um abraço.
  • Magic e Dark_Sorcerer gosta disto

Nexus 6 - Stock Android 6.0.1 (MMB29K), no userdata encription, display @ 1080p.


#7 Dark_Sorcerer

Dark_Sorcerer

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 2767 mensagens
  • hammerhead

Mensagem publicada 25 November 2012 - 14:53

Boa tarde,

Neste caso a partição /efs é uma partição read-only e não há o risco de ser modificada enquanto se executa o backup.
Quando isso não sucede é boa prática que o backup da partição seja feito enquanto a mesma não esteja "montada" no sistema.
O comando que sugeriste, efectua na realidade também um backup da partição /efs que pode ser reposto em caso de necessidade.
No entanto quanto a partição fica corrompida um backup dessa natureza não é o suficiente, porque de pouco serve colocar informação numa partição em que a sua estrutura não é consistente.
Assim, a solução é ter um backup que represente toda a estrutura da partição e sua informação.
Espero ter sido explicito.

Um abraço.


Alo,

Foste sim senhor. Obrigado! E se um device não tiver TWRP nem puder tê - la? O meu P5100 não tem, por exemplo. Há forma de dar volta à situação?

Abraço,

Sent from my GT-P5100 using Tapatalk 2


Chat do fórum: http://l.androidpt.com/chat

#8 on.one

on.one

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 5169 mensagens
  • LocalizaçãoAlfragide

Mensagem publicada 25 November 2012 - 15:18

Alo,

Foste sim senhor. Obrigado! E se um device não tiver TWRP nem puder tê - la? O meu P5100 não tem, por exemplo. Há forma de dar volta à situação?

Abraço,

Sent from my GT-P5100 using Tapatalk 2

Boa tarde,

Pelo facto de a partição /efs ser read-only o backup pode ser feito com o sistema a executar sem que constitua algum risco.
No entanto para repor esse tipo de backup seria necessário ter acesso às partições do equipamento sem que o sistema estivesse a executar.

Um abraço.
  • Dark_Sorcerer gosta disto

Nexus 6 - Stock Android 6.0.1 (MMB29K), no userdata encription, display @ 1080p.


#9 Dark_Sorcerer

Dark_Sorcerer

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 2767 mensagens
  • hammerhead

Mensagem publicada 25 November 2012 - 16:22

Boa tarde,

Pelo facto de a partição /efs ser read-only o backup pode ser feito com o sistema a executar sem que constitua algum risco.
No entanto para repor esse tipo de backup seria necessário ter acesso às partições do equipamento sem que o sistema estivesse a executar.

Um abraço.


Alo,

Ou seja, sem TWRP, estou bem lixado. :-)

Obrigado pela explicação!

Um abraço,

Sent from my GT-P5100 using Tapatalk 2


Chat do fórum: http://l.androidpt.com/chat

#10 on.one

on.one

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 5169 mensagens
  • LocalizaçãoAlfragide

Mensagem publicada 25 November 2012 - 18:49

Alo,

Ou seja, sem TWRP, estou bem lixado. :-)

Obrigado pela explicação!

Um abraço,

Sent from my GT-P5100 using Tapatalk 2

Boa tarde,

Não necessariamente, basta que tenhas uma recovery que permita o acesso root com adb. Normalmente são opção que se definem aquando da compilação.

Um abraço.
  • Dark_Sorcerer gosta disto

Nexus 6 - Stock Android 6.0.1 (MMB29K), no userdata encription, display @ 1080p.


#11 Lder

Lder

    Fã de Android

  • Membros
  • PipPipPip
  • 276 mensagens
  • Galaxy Nexus 4.3 yakju

Mensagem publicada 09 December 2012 - 14:46

"A TWRP recovery permite efectuar a ligação adb com permissões root enquanto está a ser executada e é por esse motivo que a vamos usar."
Quer dizer que posso usá-la sem ter feito root no telefone ou preciso de fazer root antes de usar a TWRP recovery?
E as linhas de comando que apresentaste podem ser feitas em MAC?

Vou começar o processo de fazer upgrade/mudar codigo do meu GN e por isso o telefone está praticamente como chegou às minhas mãos . A única coisa que preciso mesmo de fazer backup é a pasta efs (caso algo corra mal). O resto para mim é dispensável!
Agradeço o vosso feedback
Abraço

#12 Dark_Sorcerer

Dark_Sorcerer

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 2767 mensagens
  • hammerhead

Mensagem publicada 09 December 2012 - 16:01

"A TWRP recovery permite efectuar a ligação adb com permissões root enquanto está a ser executada e é por esse motivo que a vamos usar."
Quer dizer que posso usá-la sem ter feito root no telefone ou preciso de fazer root antes de usar a TWRP recovery?
E as linhas de comando que apresentaste podem ser feitas em MAC?

Vou começar o processo de fazer upgrade/mudar codigo do meu GN e por isso o telefone está praticamente como chegou às minhas mãos . A única coisa que preciso mesmo de fazer backup é a pasta efs (caso algo corra mal). O resto para mim é dispensável!
Agradeço o vosso feedback
Abraço


Alo,

Precisas de fazer unlock ao bootloader antes deste procedimento. Não precisas de root.

E sim, podem ser feitas em Mac.

Um abraço,

Sent from my Nexus 7 using Tapatalk 2


Chat do fórum: http://l.androidpt.com/chat

#13 Lder

Lder

    Fã de Android

  • Membros
  • PipPipPip
  • 276 mensagens
  • Galaxy Nexus 4.3 yakju

Mensagem publicada 09 December 2012 - 20:01

Duvidas, Duvidas, Duvidas...
Estive a dar uma olhada no Youtube ao TWRP porque sinceramente estava a leste.
Em relação aos passos deste tópico deixa-me ver se percebi porque estou muito muito verdinho nisto:
O primeiro comando instala a TWRP, penso eu. Depois os restantes passos servem para fazer o respectivo backup, mas não o fazemos a partir da interface gráfica da TWRP mas sim através da linha de comandos? Os comandos ainda referem a adb. Tenho de tê-la presente no computador ou é apenas um comando?
Não percebo o "sync". É uma opção do TWRP?
Depois faço reboot na TWRP por isso ela está activa, certo?

Em relação ao desbloqueio do bootloader, faço-o com as indicações usadas para actualizar o GN para 4.2, mas chegando a esse ponto, não querendo continuar com a actualização (porque primeiro tenho de fazer o backup da pasta efs) basta desligar o telefone do computador ou sigo algum procedimento específico para não fazer porcaria?

Desculpem as perguntas mas quando vocês falam "geek" é lixado de perceber, sobretudo para alguém que ainda não fez nada do género.
Têm de fazer um tópico para pessoal nabo como eu :)
No entanto aprendo rápido por isso estejam descansados!

#14 on.one

on.one

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 5169 mensagens
  • LocalizaçãoAlfragide

Mensagem publicada 09 December 2012 - 21:16

Boa noite,

Fazer a correcta instalação do Android SDK é fundamental para fazer este tipo de procedimentos, visto que nos fornece as ferramentas, adb ( android debug bridge ) e fastboot. A instalação adequada também permite depois actualizar o Android SDK, o que inclui as referidas ferramentas.

Sem querer aprofundar todas as funções de cada uma das ferramentas, a opção boot, ao contrário da opção flash, não torna permanente a TWRP, ou seja, apenas a carrega em memória.
Optei por usar a TWRP porque nos permite uma shell, com adb shell, com acesso root. Os privilégios de root permitem-nos ter acesso directo aos filesystem.
No final, antes de terminar a sessão é recomendado "descarregar" a cache com o comando "sync" para ter a certeza que toda a informação ficou escrita.

Um abraço.
  • Lder gosta disto

Nexus 6 - Stock Android 6.0.1 (MMB29K), no userdata encription, display @ 1080p.


#15 Lder

Lder

    Fã de Android

  • Membros
  • PipPipPip
  • 276 mensagens
  • Galaxy Nexus 4.3 yakju

Mensagem publicada 09 December 2012 - 21:47

Então devo instalar a Android SDK não só para fazer a actualização para 4.2.1 mas também para este procedimento de backup, certo?
Suponho também que a TWRP no procedimento que descreveste não é instalada no telefone mas apenas acedida. Percebi que o acesso root é o que permite acesso ao filesystem (também não sou assim tão nabo!)
Sendo assim o "sync" é um comando do terminal do Mac.
E em relação ao bootloader sigo as instruções da actualização para 4.2.1? Mas "interrompo" o processo para depois fazer o backup através do TWRP?
Obrigado e abraço

#16 Dark_Sorcerer

Dark_Sorcerer

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 2767 mensagens
  • hammerhead

Mensagem publicada 09 December 2012 - 22:12

Então devo instalar a Android SDK não só para fazer a actualização para 4.2.1 mas também para este procedimento de backup, certo?
Suponho também que a TWRP no procedimento que descreveste não é instalada no telefone mas apenas acedida. Percebi que o acesso root é o que permite acesso ao filesystem (também não sou assim tão nabo!)
Sendo assim o "sync" é um comando do terminal do Mac.
E em relação ao bootloader sigo as instruções da actualização para 4.2.1? Mas "interrompo" o processo para depois fazer o backup através do TWRP?
Obrigado e abraço


Alo,

Sim a tudo, excepto ao sync, que confesso que não sei se é na twrp ou no Mac.

Abraço,

Sent from my Nexus 7 using Tapatalk 2


  • Lder gosta disto
Chat do fórum: http://l.androidpt.com/chat

#17 on.one

on.one

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 5169 mensagens
  • LocalizaçãoAlfragide

Mensagem publicada 09 December 2012 - 22:25

Boa noite,

O comando sync é um comando da shell de linux. Como quando estamos numa sessão adb shell, estamos numa shell de linux "dentro" do equipamento.

Um abraço.
  • Dark_Sorcerer e Lder gosta disto

Nexus 6 - Stock Android 6.0.1 (MMB29K), no userdata encription, display @ 1080p.


#18 Lder

Lder

    Fã de Android

  • Membros
  • PipPipPip
  • 276 mensagens
  • Galaxy Nexus 4.3 yakju

Mensagem publicada 09 December 2012 - 22:26

Ok.
Quando destrancar o bootloader (- fastboot oem unlock – confirmar a operação com as teclas de volume e aceitando com a tecla power. Depois do procedimento o telefone volta de novo para o modo fastboot e passará a dizer 'LOCK STATE' 'UNLOCKED'.) o que faço para interromper o processo? Simplesmente carrego no botão power para voltar a ligar o telefone ou escrevo algum comando no terminal?
Obrigadp
ps: tenho a impressão que vou criar um belo pisa-papeis com tantas dúvidas :)

#19 Lder

Lder

    Fã de Android

  • Membros
  • PipPipPip
  • 276 mensagens
  • Galaxy Nexus 4.3 yakju

Mensagem publicada 09 December 2012 - 22:46

Boa noite,

O comando sync é um comando da shell de linux. Como quando estamos numa sessão adb shell, estamos numa shell de linux "dentro" do equipamento.

Um abraço.


Ok! Percebo que estás a explicar direitinho os passos para que eu tenha noção do que estou a fazer e não só fazer porque vi num tópico que devia fazer dessa maneira. Obrigado
Mas voltando ao português por um momento quer dizer que escrevo o comando no terminal do Mac, certo?
Abraço

#20 Dark_Sorcerer

Dark_Sorcerer

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 2767 mensagens
  • hammerhead

Mensagem publicada 10 December 2012 - 01:04

Ok.
Quando destrancar o bootloader (- fastboot oem unlock – confirmar a operação com as teclas de volume e aceitando com a tecla power. Depois do procedimento o telefone volta de novo para o modo fastboot e passará a dizer 'LOCK STATE' 'UNLOCKED'.) o que faço para interromper o processo? Simplesmente carrego no botão power para voltar a ligar o telefone ou escrevo algum comando no terminal?
Obrigadp
ps: tenho a impressão que vou criar um belo pisa-papeis com tantas dúvidas :)


Alo,

Quando ele fica unlocked tudo fica parado, é uma acção - reacção. Ele volta ao fastboot e está unlocked, mais nada.

Se só quisesses fazer unlock era só fazer Start (carregando no botão power) . Como não queres, efectuas os comandos deste tópico.

O problema não é falar português : o problema é que, como ainda não experimentaste, não estás a 'ver' o processo. Procura no YouTube algo como Nexus Unlock Bootloader, já ficas com uma ideia melhor. Ah, mas atenção.. Volta aqui para seguir as indicações, não estou a dizer para seguires as indicações de um qualquer vídeo do YouTube - é meramente para veres o que acontece, a rotina do instalação.

Abraço,

Sent from my Nexus 7 using Tapatalk 2


  • Lder gosta disto
Chat do fórum: http://l.androidpt.com/chat

#21 Lder

Lder

    Fã de Android

  • Membros
  • PipPipPip
  • 276 mensagens
  • Galaxy Nexus 4.3 yakju

Mensagem publicada 10 December 2012 - 08:29

Ok.
Estava a pensar exactamente isso: só mesmo fazendo é que se obtém uma melhor ideia do que estamos a falar.
Estava a tentar reunir o maximo de informação e esclarecimentos antes de me lançar ao trabalho porque simplesmente não quero fazer porcaria.
Já fui varias vezes ao YouTube mas os processos por vezes diferem ligeiramente. Estive a ver através do Toolkit mas o gajo coloca uma factory image que é do Nexus 10 e por isso achei estranho.
Se não fosse a questão do backup da efs já tinha feito a actualização (ou pelo menos tentado) através do respectivo tópico.
Obrigado aos dois pela paciência!
Abraço

#22 Dark_Sorcerer

Dark_Sorcerer

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 2767 mensagens
  • hammerhead

Mensagem publicada 10 December 2012 - 09:32

Ok.
Estava a pensar exactamente isso: só mesmo fazendo é que se obtém uma melhor ideia do que estamos a falar.
Estava a tentar reunir o maximo de informação e esclarecimentos antes de me lançar ao trabalho porque simplesmente não quero fazer porcaria.
Já fui varias vezes ao YouTube mas os processos por vezes diferem ligeiramente. Estive a ver através do Toolkit mas o gajo coloca uma factory image que é do Nexus 10 e por isso achei estranho.
Se não fosse a questão do backup da efs já tinha feito a actualização (ou pelo menos tentado) através do respectivo tópico.
Obrigado aos dois pela paciência!
Abraço


Bom dia,

http://www.youtube.c...DmgtE80A#t=131s - a partir do minuto 2:11. Como podes ver lá, o procedimento "termina" no unlock do bootloader, ficando o telemóvel novamente em fastboot e pronto para começares este processo de backup da EFS.

Abraço,
Chat do fórum: http://l.androidpt.com/chat

#23 Lder

Lder

    Fã de Android

  • Membros
  • PipPipPip
  • 276 mensagens
  • Galaxy Nexus 4.3 yakju

Mensagem publicada 13 December 2012 - 12:05

Uma pergunta de noob: se o processo de desbloqueio do bootloader apaga o conteudo do telemovel não corre o risco de apagar também a pasta efs ou isso apenas acontece só quando se flasha uma ROM DEPOIS do desbloqueio do bootloader?
Abraço

Editado por Lder, 13 December 2012 - 12:05.


#24 Dark_Sorcerer

Dark_Sorcerer

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 2767 mensagens
  • hammerhead

Mensagem publicada 13 December 2012 - 12:17

Alo,

O que me parece é que o unlock ao bootloader faz um wipe ao /system e /data por segurança, enquanto a /efs é uma pasta diferente e ele não lhe mexe. Mas é melhor ser o on.one a responder.

Abraço,

Editado por Dark_Sorcerer, 13 December 2012 - 12:17.

  • Lder gosta disto
Chat do fórum: http://l.androidpt.com/chat

#25 on.one

on.one

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 5169 mensagens
  • LocalizaçãoAlfragide

Mensagem publicada 13 December 2012 - 12:45

Boa tarde,


Quando se refere que efectuar o unlock ao bootloader apaga tudo, significa que apaga tudo que se relaciona com a informação e identidade do utilizador, ou seja, /data e /userdata ( aplicações, definições de aplicações e utilizador e dados do utilizador ( conteúdo do sdcard ) ).
O /system não é mexido, nem muito menos a /efs que no fim de contas é como se fosse a identidade do telefone ( na realidade até é, e é única ( IMEI ) ).

Um backup deste género serve para quando acontece algo de muito, mas muito inesperado, ou se faz asneira da grossa, como por exemplo aplicar ficheiros de bootloader, boot, radio, etc, que não sejam para o equipamento em questão.

Já tive oportunidade de relatar a minha experiência de um mau flash que me fez ficar sem acesso à /efs. Instalar as factory images resolveu, mas se não resolvesse, tinha a hipótese de fazer o restauro da identificação do telefone, ou seja o restauro da /efs.

Espero ter elucidado.

Um abraço.
  • Dark_Sorcerer e Lder gosta disto

Nexus 6 - Stock Android 6.0.1 (MMB29K), no userdata encription, display @ 1080p.