Impossibile creare una tabella delle partizioni sulla scheda micro SD


1

Sto cercando di riformattare una scheda micro SD che era precedentemente in un raspberry pi (e aveva smesso di funzionare). Tuttavia, quando lo collego al mio computer principale (arco) e provo a partizionarlo, non posso perché gparted dice che non ha una tabella delle partizioni. Quando provo a risolverlo aggiungendo una tabella delle partizioni (GPT), visualizzo gli errori di seguito. Come posso riparare la mia scheda USB?

Ho anche incluso l'output di dmesg quando lo collego se questo aiuta. Non ho accesso a nessun altro sistema operativo, quindi non posso semplicemente provare qualcosa su Windows.

output di gparted quando provo a mettere una tabella delle partizioni sulla scheda:

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

dmesg output quando la scheda è collegata:

[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

Se vedi una mucca e la testa viene smontata dal corpo, le sue gambe sono sugli alberi e le sue viscere si rovesciano dappertutto, proveresti il ​​primo soccorso o pensi che stia solo dormendo?
Frank Sixteen,

Quindi dovrei ottenere un'altra scheda SD? @FrankSixteen
ZuluDeltaNiner,

Bene, non direi che segue per necessità, ma se vuoi, perché no?
Frank Sixteen,

Risposte:


1

Esiste un bug noto nel kernel Linux 4.4-rc4 e versioni successive (persiste ancora oggi). Puoi leggere questo bug e una possibile soluzione alternativa su kernel.org .

Si interrompe essenzialmente per disabilitare l'interrogazione delle funzioni opzionali, che blocca efficacemente l'hardware del lettore di schede:


La soluzione temporanea

  1. Scaricare i moduli SDHC con

rmmod sdhci sdhci_pci sdhci_acpi

  1. Ricarica i moduli con le opzioni per disabilitare le funzionalità opzionali con

modprobe sdhci debug_quirks2="0x10000"

  1. Caricare di nuovo il modulo sdhci_pci con modprobe sdhci_pci

Riprova con la tua scheda SD. Tuttavia, l'inizializzazione potrebbe richiedere alcuni secondi (perché le query continuano a scadere, ma ora lo ignoriamo).

Se questo funziona per te, continua con la soluzione permanente


La soluzione permanente

Si noti che è ancora una soluzione alternativa e potrebbe non riuscire in futuro. Dovresti disabilitare la soluzione alternativa nelle future versioni del kernel per vedere se il bug è stato corretto.

  1. Crea un file di configurazione modprobe in /etc/modprobe.d (o ovunque la tua distribuzione memorizzi i file di configurazione) e scrivi le opzioni del modulo laggiù. Il nome non ha importanza, purché si concluda con .conf .

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

Le opzioni verranno caricate all'avvio in futuro. In caso contrario, potresti provare a incidere la correzione temporanea in uno script di avvio, come soluzione molto sporca, ma possibile.


-1

Questa scheda SD è difettosa o danneggiata o i pin elettrici sono danneggiati. Riprovare dopo averli puliti. Se il problema persiste, è tempo di una nuova scheda SD.


Il chip del controller è chiaramente fritto. Non riesco a pensare a un ambiente più ostile per un chip ad alta velocità, fragile a scarica elettrostatica rispetto a quando un dilettante sta giocando con il suo Raspberry aperto, e ovviamente in assenza di qualsiasi dispositivo antielettrostatico.
Frank Sixteen,

Ho notato dopo che questa carta era di classe 8, che è inferiore alla classe consigliata 10. Penso che fosse il mio problema, combinato con quanto sopra.
ZuluDeltaNiner,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.