Erro ao inicializar o cartão SD no Linux

20

Percebi problemas com meu cartão microSD no meu telefone Android e, quando tentei inseri-lo no meu laptop Linux, recebi o seguinte erro dmesg:

[  247.588279] mmc0: error -123 whilst initialising SD card
[  247.591314] sdhci-pci 0000:0d:00.1: Will use DMA mode even though HW doesn't fully claim to support it.
[  247.648629] sdhci-pci 0000:0d:00.1: Will use DMA mode even though HW doesn't fully claim to support it.
[  248.903044] mmc0: card never left busy state
[  248.903051] mmc0: error -110 whilst initialising SD card
[  248.907007] sdhci-pci 0000:0d:00.1: Will use DMA mode even though HW doesn't fully claim to support it.

Isso significa que meu cartão microSD está quebrado? Como isso aconteceu de repente no meu telefone? Não há como recuperar parcialmente os dados contidos nela?

denisq
fonte
Você conseguiu montar a placa no Linux antes deste problema? Se o cartão estiver formatado exFAT, talvez seja necessário instalar o exfat-utils e o exfat-fuse . [Se o formato é não o problema, então você pode precisar de algumas ferramentas forenses para salvamento de qualquer coisa a partir do cartão.]
DrMoishe Pippik
5
@DrMoishePippik, os erros estão ocorrendo em um nível muito abaixo do nível do sistema de arquivos. A falta de suporte ao exFAT não seria exibida até o usuário tentar montar o sistema de arquivos e envolveria uma mensagem parecida com "sistema de arquivos não suportado ou superbloco corrompido".
Mark

Respostas:

6

O seu cartão SD morreu. Isso acontece com o tempo, algo como uma gota ou muito uso pode causar a morte de um cartão SD. Aconteceu o mesmo comigo em um cartão micro SD de 16GB usado com o meu Raspberry Pi 2. Ele parou de funcionar um dia.

A única maneira de obter os dados do cartão SD nesse momento é levá-los a um profissional no campo de recuperação de dados.

Gamerb
fonte
3
Isso não é verdade. O cartão morto é uma razão possível, mas existem outras. Eu tenho o mesmo problema com um novo cartão SD e funciona perfeitamente na minha câmera. No entanto, meu laptop Linux mostra esse problema exato. O cartão ainda funciona depois de colocar de volta a câmera. Ele não morreu (ainda), isso é uma falta de suporte ao linux de alguma combinação estranha de formatação / fabricante.
Jean-Bernard Jansen
Apenas reiniciar foi suficiente ... #
S0me0ne
2

Vejo exatamente o mesmo erro no meu laptop Lenovo ao tentar montar um cartão SD e devo dizer que, infelizmente, o suporte a cartões SD na área de trabalho Linux é subótimo. O mesmo cartão funciona perfeitamente no meu telefone Android e na minha câmera!

Como solução alternativa, para fazê-lo funcionar na área de trabalho, a única solução encontrada foi deixá-lo conectado e aguardar alguns minutos até que o erro pare e o dispositivo seja exibido.

Teresa e Junior
fonte
Isso é mais um comentário do que uma resposta.
alljamin
2
@ alljamin Eu não concordo. A resposta aceita sugere que o usuário jogue fora o cartão SD. Além disso, ele responde que é um bug existente e que existem soluções alternativas.
Teresa e Junior
1

Tente conectar o cartão SD usando um leitor de cartão de memória USB.

Isso funcionou no meu caso, um laptop Lenovo executando o Ubuntu 16.04, e o cartão SD é definitivamente reconhecido em outros sistemas operacionais.

Em vez de receber as mensagens de erro ao executar dmesg

[  882.603991] mmc0: card never left busy state
[  882.604001] mmc0: error -110 whilst initialising SD card

Recebo as mensagens de sucesso

[ 1724.883050] sd 6:0:0:2: [sdd] 250607616 512-byte logical blocks: (128 GB/119 GiB)
[ 1724.888318]  sdd: sdd1

Não tenho certeza se a velocidade de leitura é tão rápida quanto conectar o SD diretamente ao laptop, mas estou feliz que o SD seja pelo menos reconhecido.

Viciado em orgânicos
fonte
0

Eu me deparei com isso com cartões SD quase novos em máquinas Linux modernas, onde os mesmos cartões funcionam bem no Raspberry Pis (executando Linux!) Sem problemas. Minha sugestão é a primeira a:

  • remova, aguarde alguns segundos e reinsira o cartão
  • executar sudo partprobeocasionalmente funciona (pode ser necessário instalar um pacote primeiro, dependendo do seu sistema)
  • como diz Teresa, espere alguns minutos e o kernel poderá detectar o cartão

Ah, e faça backup do seu cartão, pois ele pode estar prestes a morrer, independentemente da idade.

Jonny
fonte
0

Você usa um adaptador SD com uma chave de bloqueio de gravação mecânica ?

De fato, um antigo cartão SD meu (sem necessidade de adaptador) tem o mesmo problema no meu Lenovo ThinkPad E540. A solução no meu caso é alternar o interruptor de bloqueio de gravação algumas vezes. Como isso é puramente mecânico, eu suspeito que uma porta de placa danificada / com bugs - a minha aparência e ... "soa" muito frágil!

sphakka
fonte