Não é possível criar uma tabela de partição no cartão micro SD

1

Estou tentando reformatar um cartão micro SD que estava anteriormente em um pi de framboesa (e parou de funcionar). No entanto, quando eu o conecto ao meu computador principal (arco) e tento particioná-lo, não consigo porque o gparted diz que não tem uma tabela de partições. Quando tento corrigir isso adicionando uma tabela de partição (GPT), recebo os erros abaixo. Como posso consertar meu cartão SDU?

Eu também incluí a saída do dmesg quando eu o conecto se isso ajuda. Eu não tenho acesso a nenhum outro sistema operacional, então não posso tentar algo no Windows.

saída do gparted quando tento colocar uma tabela de partições no cartão:

/dev/mmcblk0: unrecognised disk label
Input/output error during write on /dev/mmcblk0
Error fsyncing/closing /dev/mmcblk0: Input/output error

saída dmesg quando o cartão está conectado:

[99702.919024] sdhci: Timeout waiting for Buffer Read Ready interrupt during tuning procedure, falling back to fixed sampling clock
[99702.919048] mmc0: new ultra high speed SDR104 SDHC card at address 59b4
[99702.920575] mmcblk0: mmc0:59b4 00000 7.35 GiB 
[99702.930961] mmc0: Controller never released inhibit bit(s).
[99712.952421] mmc0: Timeout waiting for hardware interrupt.
[99712.952498] mmcblk0: error -110 sending status command, retrying
[99712.954084] mmcblk0: unknown error -5 sending read/write command, card status 0x900
[99714.412427] sdhci: Timeout waiting for Buffer Read Ready interrupt during tuning procedure, falling back to fixed sampling clock
[99714.412447] mmc0: tried to reset card
[99714.422507] mmc0: Controller never released inhibit bit(s).
[99724.445769] mmc0: Timeout waiting for hardware interrupt.
[99724.445834] mmcblk0: error -110 sending status command, retrying
[99724.448129] mmcblk0: unknown error -5 sending read/write command, card status 0x900
[99724.448136] blk_update_request: I/O error, dev mmcblk0, sector 0
[99724.448140] Buffer I/O error on dev mmcblk0, logical block 0, async page read
[99724.448668] ldm_validate_partition_table(): Disk read failed.
[99724.448673]  mmcblk0: unable to read partition table
    
por ZuluDeltaNiner 23.05.2016 / 05:36

2 respostas

1

Existe um bug conhecido no kernel Linux 4.4-rc4 e posterior (ainda persiste hoje). Você pode ler sobre este bug e uma possível solução alternativa em kernel.org .

Essencialmente, ele é desabilitado para desabilitar a consulta opcional de recursos, o que efetivamente trava o hardware do leitor de cartões:

A solução temporária

  1. Descarregar os módulos sdhc com

rmmod sdhci sdhci_pci sdhci_acpi

  1. Recarregue os módulos com opções para desativar os recursos opcionais com

modprobe sdhci debug_quirks2="0x10000"

  1. Carregue o módulo sdhci_pci novamente com modprobe sdhci_pci

Tente novamente com seu cartão SD. Pode levar alguns segundos para inicializar (porque as consultas ainda estão esgotadas, mas ignoramos isso agora).

Se isso funcionar para você, continue com a solução permanente

A solução permanente

Por favor, note que ainda é uma solução alternativa e pode falhar no futuro. Você deve desativar a solução alternativa em futuras versões do kernel para ver se o bug foi corrigido.

  1. Crie um arquivo de configuração modprobe em /etc/modprobe.d (ou onde sua distribuição armazena os arquivos de configuração) e escreva as opções do módulo lá embaixo. O nome não importa, contanto que termine com .conf .

echo 'options sdhci debug_quirks2="0x10000"' > /etc/modprobe.d/dell_sdhci.conf

As opções serão carregadas durante a inicialização no futuro. Se isso não acontecer, você pode tentar hackear a correção temporária em um script de inicialização, como uma solução muito suja, mas possível.

    
por 17.06.2016 / 14:26
-1

Este cartão SD está com defeito ou danificado ou os pinos elétricos estão com defeito. Tente novamente depois de limpá-los. Se ainda assim falhar, é hora de um novo cartão SD.

    
por 23.05.2016 / 06:50