Como forçar a exibição da opção de formatação do cartão SD como memória interna. – Elias Praciano
Categories
Android Linux Tutoriais

Como forçar a exibição da opção de formatação do cartão SD como memória interna.

Em alguns celulares, o recurso de uso do cartão de memória SD como extensão da memória interna do aparelho está escondida do usuário ou desabilitada.
Você pode usar o adb shell para se conectar ao aparelho via USB e ativar o recurso com um único comando. Veja como fazer isso, aqui.

O recurso de formatação do cartão de memória SD para estender a memória interna (ROM), também conhecido como adoptable storage é amplamente conhecido nos aparelhos da Lenovo/Motorola — especialmente da linha mais popular G com Android 6.0 Marshmallow ou superior.
Outros fabricantes optaram por suprimir ou (apenas) esconder o recurso do usuário.
Sugiro fortemente a leitura do texto Perguntas e respostas sobre o adoptable storage, antes de continuar — para tirar dúvidas que você tenha, antes de prosseguir.
Outras dúvidas podem ser satisfeitas através dos links, no decorrer do texto – e na seção de referências, lá embaixo.

Leia, antes de continuar

Este artigo surge após muitos (muitos, mesmo) leitores me perguntarem sobre como ativar o recurso em celulares, como os modelos Samsung Galaxy e os LG série G.
A insistência me fez voltar a me debruçar sobre o assunto, mesmo achando que já escrevi muito sobre ele.
Nos aparelhos em que o recurso não está visível, ele pode estar apenas desativado e, portanto, ainda pode ser acessível aos seus donos, através de alguns procedimentos.

É importante dizer que não testei os procedimentos aqui descritos.
Este post é fruto de alguma pesquisa e não de experiências.
Siga em frente por sua própria conta e risco.

Se o seu aparelho for rooted ou rooteado o céu é o limite — ou seja, você pode fazer tudo com ele – inclusive inutilizá-lo.
Portanto, leia primeiro todo o tutorial e decida depois se vale a pena fazer ou não.
Se você usa Windows 10, não esquece dar uma olhada na dica do Felipe, lá nos comentários.

Prerrequisitos

O procedimento que segue, não requer rooting do seu celular.
Contudo, você precisa se certificar de que os seguintes requisitos já foram satisfeitos no seu aparelho:

Se estes itens já estiverem OK, faça backup dos seus dados e prossiga.

Como ativar a exibição da opção de uso de adoptable storage através da adb shell

Conecte o smartphone ao computador, através do cabo USB e abra um terminal no seu sistema e ative o modo transferência de imagens (pictures).
Dentro do terminal, execute a shell do adb.

Como você pode ver, na imagem abaixo, eu rodo a minha shell dentro de um terminal Linux. Não sei como funciona no Windows ou no MacOS. Se for muito diferente, me avise, nos comentários.

captura de tela adb shell
Siga os passos:

  1. Dentro da shell, dê o comando sm list-disks. Ele deve retornar algo parecido com disk:179,0, que é a ID do seu cartão SD.
  2. Decida quanto espaço você deseja dedicar ao adoptable mode ou extensão do armazenamento interno.
  3. Se optar por usar 100% do cartão como armazenamento interno, dê o seguinte comando:
    
    sm partition disk:179,0 private
    

    Fique atento para usar a ID do seu cartão e não a minha.
    Se preferir que seu cartão tenha uma configuração mista, use o comando desta forma:

    
    sm partition disk:179,0 mixed 50
    

    em que o mixed 50 informa que apenas metade (50%) do cartão será destinado ao adoptable mode. O restante permanecerá no modo tradicional.

Em seguida, saia da shell com o comando exit e verifique se o cartão do aparelho já aceita o novo modo de operação.
Veja as imagens do “antes” e “depois”, abaixo:
armazenamento interno android
Espero que este procedimento resolva na maioria dos celulares.
Se não der certo, sugiro continuar pesquisando em outros sites.
Caso você tenha conseguido resolver o problema de alguma forma diferente, conte pra gente. 😉

Referências

https://www.reddit.com/r/lgg5/comments/4mfo9l/adoptable_storage_on_lg_g5_nonroot/.

By Elias Praciano

Autor de tecnologia (livre, de preferência), apaixonado por programação e astronomia.
Fã de séries, como "Rick and Morty" e "BoJack Horseman".
Me siga no Twitter e vamos trocar ideias!

58 replies on “Como forçar a exibição da opção de formatação do cartão SD como memória interna.”

Com o SAMSUNG J5 modelo SM-J500M/DS não funcionou nem com reza braba.
Estava com o android 6.0.1 instalado, da atualização oficial da SAMSUNG.
Resolvi instalar uma ROM customizada (https://youtu.be/-yQt9gojt3M), mas continuou com a mesma restrição.
Aí achei um vídeo no YOUTUBE ensinando instalar o arquivo adoptable_storage_enabler_ashyx_13916.zip pelo TWRP (https://youtu.be/tZXCLSIS8nI) e arrisquei.
Não é que FUNCIONOU!!!

Parabéns amigo, deu certinho. Era exatamente o que eu precisava, transformar meu SD em memória pra rodar app e armazenamento. Obrigada! Usei o Windows e os comandos são esses mesmos.

No meu maldito Galaxy A9 Pro 2016, não funciona de jeito nenhum, faço todos os comandos e mesmo assim vou lá no celular e nada muda, alguém pode me ajudar?

Show de bola Elias, você me salvou, eu já estava ficando frustrado pois recentemente eu comprei um Asus Zenfone Live L2 e a opção veio desativada pela Asus, o que me chamou atenção é o fato do celular aceitar um cartão externo de até 2 TB. Aí eu coloquei o cartão do meu celular antigo e não estava aparecendo o recurso, apenas formatar como portátil. Eu uso muito o ADB para fazer root, colocar custom recoverys, custom roms mas não conhecia esses comandos. Muito obrigado mesmo!

Olá. Após o comando
sm partition disk:179,64 private
o sd aparece como corrompido no meu celular

Olá.
O que funcionou pra mim com um galaxy tab 8 foi o seguinte:
Atualizei para o androi 7.1, talvez não fosse necessário, estava com o 6.1, mas não tinha obtido sucesso.
Inicialmente segui as dicas do site abaixo para a instalação no PC de tudo que é necessário para fazer a modificação.
https://olhardigital.com.br/dicas_e_tutoriais/noticia/como-expandir-a-memoria-interna-do-android-com-o-cartao-microsd/78377
Já dentro da adb shell executei os seguintes comandos:
1) sm set-force-adoptable true
2) sm list-disks(para saber o ID do disco, no meu caso 179,64)
3) sm partition disk:179,64 private

E não rolou, o cartão sd continuava ali como portátil e se fosse formatar novamente não dava outra opção.

Então retirei o SD, pluguei no pc, removi a partição existente, voltei no celular e executei tudo de novo, ai sim quando foi formatar veio a bendita da opção de formatar como interno.

Agora tenho 128Gb para whatsapp e fotos e videos. Fianlmente, já tava quase tendo um troco aqui com a quantidade de grupos e toda semana tendo que liberar espaço!

Vlw Felipe, funcionou, só pra falar como fiz..
baixe o adb: https://developer.android.com/studio/releases/platform-tools.html.
descompacte ele na area de trabalho por exemplo.
Depois va em iniciar>digite cmd>abrira o prompt de comando, abra a pasta descompactada e copie o endereço dela.. algo como C:\ .. Desktop\platform-tools
no prompt de comando digita: cd
da um espaço e cole o endereço copiado.
vc estara no endereço da pasta. agora digite: adb shell
em seguida so seguir o passo a passo, digitar: sm list-disks
e etc como diz la em cima nesse tutorial

O problema para mim é que ele cria um SD sem espaço porque ele cria um espaço reservado para o sistema do tamanho do SD e não consigo acessa-lo ou gerenciá-lo. Não sei como evitar que ele crie esse espaço reservado. Pode me ajudar?

Muito obrigado! Funcionou perfeitamente no Zenfone 3 Max Modelo ZC520TL. Executei o procedimento com o cartão SD já montado como portátil e logo após o procedimento o mesmo foi formatado e montado como memória interno.

PERFEITOOOOO!!! A galera ai que devem ser meio leigos e não tá acertando fazer. fiz exatamente como manda o figurino e foi de primeirassa super facil. parabens pela explicacao.

Alguém tem solução para o erro “Adoptable storage not available on device with native FBE” ??

Você fez o processo de identificação?
“sm list-disks”
Fique atento pra usar a ID do seu cartão e não a ID do post.

Tentei fazer no Zenfone 3 Max, porem aparece a mensagem que não é possível formatar o cartão SD.

Alguém tem alguma dica ?

boa noite no meu lg comando partition da erro coloco mesmo id do cartão e da erro unsurpoted partition

Ola pessoal, meu nome Sandro e eu tenho um Zenfone 3 Max e fiz o procedimento, deu tudo certo e coloquei para utilizacao do cartao 100% de espaco para armazenamento interno. Muito obrigado e Valeu !!!!

Oi, acabei de comprar um Samsung Galaxy Note 4, e apesar de ter atualizado para o Android 6.0.1, não tem ativada a função de formatar o cartão de memória com memória interna. Como não entendo bem disso, vc poderia fazer um passo a passo com fotos, por favor?! Desde já agradeço.

Eu poderia… mas este post foi concebido para usuárias(os) avançadas(os), com alguma intimidade com o terminal e a linha de comando (CLI).
Infelizmente, não recomendo que o procedimento seja realizado por iniciantes.

Estou digitando “adb shell” mas aparece a seguinte mensagem:

O termo ‘adb’ não é reconhecido como nome de cmdlet, função, arquivo de script ou programa operável. Verifique a
grafia do nome ou, se um caminho tiver sido incluído, veja se o caminho está correto e tente novamente.
No linha:1 caractere:1
+ adb shell
+ ~~~
+ CategoryInfo : ObjectNotFound: (adb:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException

Pode me ajudar?

Olá a todos. Este procedimento funciona no Samsung Galaxy Tab A 6, 10.1 polegadas? Depois que eu rodar os comandos no shell preciso formatar o Cartão como Armazenamento Interno?

Bom dia. Estou há dias tentando o procedimento em um tablet samsung A6 sm-t285m de 7”. Não reconhece o comando “sm”. Estou fazendo todos os procedimentos corretos como descreveu o Elias, tanto é que testei em um Motorola g3, Android 6.0, e reconheceu e respondeu a todos os comando da shell. Apesar do Samsung rodar um Android 5.1.1, verifiquei que o kernell e compilações de segurança datam de abril de 2018. Acredito que a samsung possa ter implementado algo para que o sistema operacional não reconheça tais procedimentos. Escrevi para o sr. Elias Praciano o ocorrido e aguardo que o notável gurú nos dê, pelo menos, uma luz a respeito se teria uma forma de burlar tal barreira.

Eu ia apostar na diferença de versões dos sistemas operacionais — Android 5.1.1 vs Android 6.0. Mas acho que você pode estar mais certo: a empresa pode ter bloqueado este tipo de procedimento.

Na realidade o power shell é quem não reconhece esse comando “sm”. Devo esclarecer que baixei o SDK Tools para windows 64. Até o momento não consegui fazer com que o adb.exe reconheça tais comandos. Vou tentar outros comandos e ver se consigo comunicação com o tablet Samsung, AQndroid 5.1.1

tentando ajudar as pessoas que não estão conseguindo Ou acham que conseguiram fazer e deu errado

lembre-se o ícone do cartão de memória NÃO pode estar aparecendo na parte superior da tela depois da alteração, caso contrário o processo não funcionou

lembre-se cartão de memória usado como memória interna não significa que ele poderá ser tratado como memória externa ou secundária.

Ainda assim o Android irá tratar a memória interna a que no celular com prioridade na instalação dos aplicativos, mas será mais flexível nos demais aplicativos instalados na memória estendida.

E finalmente uma sugestão

o ideal é você restaurar o seu aparelho antes de fazer esse procedimento assim a sua memória interna ficará mais limpa

Depois faça o procedimento de juntar a memória do cartão com a memória interna do celular e SÓ depois faça a ativação da sua conta Google e reinstale os aplicativos e restaure os seus contatos nesse caso o uso da memória será muito melhor do que você tentar fazer a alteração e deixar o seu aparelho do jeito antigo.

Muito Bom.
eu tenho um Asus Zenfone 3 Max 5.2, depois que eu atualizei meu Android do 6.0 para o 7.0 essa função sumiu. Aqui eu conseguir ajeitar esse erro.
1. Você não precisa baixar o SDK inteiro, esse negocio vai pesar em seu PC.
2. Você só precisa da plataforma do SDK, entre nesse site: https://developer.android.com/studio/releases/platform-tools
e baixe a versão Windows ( ou qualquer uma do seu pc)
3. Ponha seu celular no usb no pc e ponha em transferência de mídia e ligue sua Depuração USB
( se você não sabe o que é isso faça os seguintes passos:
Configurações>Sobre> Informações sobre Software>Numero da Versão – clique nessa ultima opção varias vezes ate surgir uma frase escrito algo com Agora você é um desenvolvedor. Apos isso, uma nova opção vai surgir em suas configurações, a Opções de Programador, entre nela e ligue a opção Depuração USB)
4. Extraia e entre na pasta da plataforma que você baixou no site, dentro dela pressione o botão Ctrl+Shift+ botão direito do mouse, e clique em Abrir janela de comando aqui.
5. Nessa telinha preta digite adb shell e dê um enter. Se apareceu esse simbolo -$ Parabéns, quer dizer que funcionou perfeitamente, caso não apareça, repita o processo para ver se você errou em algo
6. agora escreva sm list-disks e dê um enter. Irá aparecer um numero ali, é o ID do seu SD, no meu caso ficou disk:179,160
no seu vai surgir outro numero.
7. Depois digite sm partition disk:179,160 private
como eu disse antes, não use o meu ID, use o SEU e ponha private no final, dê um enter e aguarde alguns segundos. Logo depois digite exit e enter para sair.
Apos isso verifique se seu SD ja pode ser usado como memoria interna, comigo funcionou de primeira aqui 🙂
espero que essa minha experiencia ajude alguns de vocês, Abraços.

estou tendo dificuldades no comando, não esta reconhecendo o comando adb shell

Quando o Adb Shell não é reconhecido pela primeira vez, comigo tambem foi assim, nessa hora que der falha você tem que desbloqueiar a tela do seu aparelho e verá que tem uma caixa de mesagem la escrita algo com Impressão digital da Chave RSA, não precisa se preocupar, é so apertar OK e por o comando adb shell novamente, e você verá que o simbolo $ vai aparecer… o resto eu ja falei no meu primeiro comentario. espero ter ajudado

obrigado Elias Praciano, Fiz todos os procedimentos que você passou e deu tudo certo para o meu aparelho asus zenfone 3 max.

Eu não consegui! Não entendo nada de nada, como faço para abrir esse terminal de transferencia de imagem? Desculpem a burrice!

A motorola já capou a função de formatar sd como espaço interno de fábrica. Vou tentar fazer isto com meu novo moto x4 que veio sem a função.

Olá, conseguiu realizar a função de “formatar armazenamento interno” no modelo Moto X4?
Comprei o modelo e chegará em breve, sabendo da limitação do produto que impede a formatação nativamente gostaria de saber se concluiu com sucesso exibição de armazenamento interno.
Grato pela atenção!

Não funciona no Moto X4, aparece um erro quando se tenta executar os comandos sm partition disk:x,x private ou sm partition disk:x,x mixed x. Por via das duvidas Dei o comando sm partition disk:x,x public e funcionou o que demonstra que é uma trava no software (talvez do android 8.0, ou do software da Motorola.

Quando eu digito o comando “sm list-disks” no cmd, aparece: “/system/bin/sh: sm: not found” e já fiz de TUDO para consertar esse problema, mas nada resolveu até agora, alguma ajuda? Onrigada.

> Ligue as opções do Desenvolvedor
> Dentro dele procure a opção Depuração USB e ligue ela
> repita o processo…
tudo isso que eu citei esta no meu comentário aqui já, procure meu nome e faça passo a passo que você consegue.

Olá pessoal, eu possuo um Galaxy J5 Metal e o “infeliz” vem com 16Gb de memoria interna (espaço total sem formatação). Depois de formatado e particionado com o SO e apps embarcados e finalmente logo após as configurações iniciais fica com quase 12Gb disponível.
Mas não me animei por muito tempo, logo após as primeiras atualizações do Android e dos aplicativos já tava com menos de 11Gb ou seja beirando os 10Gb.
Aí meu filho, mesmo espetando um microSD 32Gb e instalando demais apps que preciso sobrou 7Gb.
Ativando o My Knox e usando pra valer fui ver já tava com menos de 5Gb.
Era um pulo pra ficar com cada vez menos espaço com o passar do tempo.
Pra resumir a conversa fui ver e já tava com menos de 3Gb de espaço livre e foi aí que resolvi fazer esse lance, e pra minha surpresa funcionou legal.
O espaço mostrado ficou maior do que o real (dizia que tinha 64Gb) e ocupação também era bem maior que a realidade, pois ele ainda usa como referencia a memoria interna como espaço livre.
O curioso é que todo o resto aparecia como cheio, mas depois eu verifiquei que não estava não.
Era só como a exibição tratava o espaço interno.
Usem o melhor cartão microSDxc que puderem bancar pra não prejudicar a performance e estabilidade.
Só um comentário a mais, vamos nos acostumando a essa tendência de irem tirando o suporte a cartão de memória.
Os fabricantes querem nos enfiar a ideia que se queremos smartphones com mais espaço que compremos modelos com esse espaço vindo de fábrica e claro pagar mais caro por isso.
A tal tampa traseira removível já é coisa do passado, ou seja adeus troca rápida de bateria, e o mesmo vai ser com os slots te cartão.
A verdade é que os fabricantes de devices Android estão morrendo de vontade de fazer que nem a Apple faz há anos.
Que descartemos nossos bichinhos a cada 3 ou 4 anos no máximo.
Sacanagem mas é o mercado e suas necessidades de consumo.

Gostei do otimismo…”3 ou 4 anos”, quando os smartphones funcionam muito bem por 1 ano inteiro a gente já se pega falando bem dele pra todo mundo…rsrs

Comigo Acho deu certo, agora lá nas configurações exibe o tamanho total de 45gb (16 interno + sd de 32)
MAS no aplicativo Gerenciador de Armazenamento do meu aparelho continua mostrando que tem so os 16gb e quase lotado, então estou na dúvida, alguém sabe?
Meu aparelho é um Zenfone 2 com Android 6.0.1

Respondendo pra mim mesmo, consegui resolver de uma maneira que ativou a formatação como interno na interface de configuração, no shell do adb comando
sm set-force-adoptable true
aí depois vai lá na configuração de armazenamento interno que vai existir a opção!

Obrigado pelas dicas!

Deu certo comigo usando Windows 10 e um samsung j2 prime. Uma dica pra quem for tentar é que no windows não é necessário instalar o SDK inteiro (é um pacote enorme, dá uns 1.6Gb de download) pra usar o ADB. Existe o download do ADB no site https://developer.android.com/studio/releases/platform-tools.html. Daí é só extrair os arquivos em um local qualquer e rodar os comandos por cmd lá nesse local.

Você fala para extrair os arquivos e rodar os comandos. Quais comandos? Os comandos que estão na imagem do post não é feito para windows e não responde. Poderia demonstrar os comandos que utilizou no cmd?

Comigo estava indo tudo bem até onde mostraria o meu id, mas não mostrou e deu essa resposta:
/system/bin/sh: sm: not found
127|shell@android:/ $ list-disks

Oi Felipe Alexandre. Você me dizer porque o meu processo deu certo até aparecer o $, mas na parte onde peço o número vai dar uma resposta com not found entre outras coisas, mas não fornecendo o número. E se após colocar exit, voltando ao diretório \platform-tools, eu escrever o comando adb devices vem a reposta:
List of devices attached
28ca304b device
Não seria esse o número do meu id? Detalhe, estou usando o windows 10 e o android é de um Sansung Galaxy J1 mini. Agradeço se puder dar uma luz.

Felipe não estou conseguindo entrar direto no command da janela do adb shell ele me dá a seguinte opção: Abrir janela do powershell aqui.

Leave a Reply to Elias Praciano Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.