Es kann keine Partitionstabelle auf der Micro-SD-Karte erstellt werden

3275
ZuluDeltaNiner

Ich versuche, eine Micro-SD-Karte neu zu formatieren, die zuvor in einem Himbeer-Pi war (und nicht mehr funktioniert hatte). Wenn ich es jedoch in meinen Hauptcomputer (Arch) stecke und versuche, es zu partitionieren, kann ich es nicht, weil gparted sagt, dass es keine Partitionstabelle hat. Wenn ich versuche, das Problem durch Hinzufügen einer Partitionstabelle (GPT) zu beheben, werden die folgenden Fehler angezeigt. Wie kann ich meine uSD-Karte reparieren?

Ich habe auch die Ausgabe von dmesg beigefügt, wenn ich es einstecke, wenn das hilft. Ich habe keinen Zugriff auf ein anderes Betriebssystem und kann daher nicht einfach etwas unter Windows versuchen.

Ausgabe von gparted, wenn ich versuche, eine Partitionstabelle auf die Karte zu setzen:

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

dmesg-Ausgabe, wenn die Karte eingesteckt ist:

[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 
1
Wenn Sie eine Kuh sehen und der Kopf vom Körper abmontiert ist, ihre Beine in den Bäumen sind und ihr Bauch überall übergossen ist, würden Sie Erste Hilfe versuchen oder würden Sie denken, dass sie nur schläft? Frank Sixteen vor 7 Jahren 0
Also sollte ich noch eine SD-Karte bekommen? @FrankSixteen ZuluDeltaNiner vor 7 Jahren 0
Nun, ich würde nicht sagen, dass es aus der Not folgt, aber wenn Sie wollen, warum nicht? Frank Sixteen vor 7 Jahren 0

2 Antworten auf die Frage

1
SiLeX

Es gibt einen bekannten Fehler im Linux-Kernel 4.4-rc4 und höher (er besteht auch heute noch). Sie können diesen Fehler und eine mögliche Problemumgehung auf kernel.org nachlesen .

Das Deaktivieren der optionalen Funktionsabfrage, die die Hardware des Kartenlesers effektiv blockiert, ist im Wesentlichen nicht möglich:


Die temporäre Problemumgehung

  1. Entladen Sie die SDHC-Module mit

rmmod sdhci sdhci_pci sdhci_acpi

  1. Laden Sie die Module erneut mit Optionen, um die optionalen Funktionen mit zu deaktivieren

modprobe sdhci debug_quirks2="0x10000"

  1. Laden Sie das Modul sdhci_pci erneut mit modprobe sdhci_pci

Versuchen Sie es erneut mit Ihrer SD-Karte. Die Initialisierung kann einige Sekunden dauern (da die Abfragen immer noch ablaufen, aber das ignorieren wir jetzt).

Wenn dies für Sie funktioniert, fahren Sie mit der permanenten Problemumgehung fort


Der permanente Workaround

Bitte beachten Sie, dass dies immer noch eine Problemumgehung ist und in der Zukunft möglicherweise fehlschlägt. Sie sollten die Problemumgehung für zukünftige Kernel-Versionen deaktivieren, um festzustellen, ob der Fehler behoben wurde.

  1. Erstellen Sie eine modprobe-Konfigurationsdatei in /etc/modprobe.d (oder wo auch immer Ihre Distribution die Konfigurationsdateien speichert), und notieren Sie die Moduloptionen dort. Der Name spielt keine Rolle, solange er mit .conf endet .

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

Die Optionen werden beim späteren Hochfahren geladen. Wenn dies nicht der Fall ist, können Sie versuchen, den temporären Fix in ein Startskript zu hacken. Dies ist eine sehr schmutzige, aber mögliche Lösung.

-1
Skaperen

Diese SD-Karte ist defekt oder beschädigt oder die elektrischen Pins sind defekt. Versuchen Sie es nach dem Reinigen erneut. Wenn es immer noch nicht funktioniert, ist es Zeit für eine neue SD-Karte.

Der Controller-Chip ist eindeutig gebraten. Ich kann mir keine feindseligere Umgebung für einen Hochgeschwindigkeits-Chip vorstellen, die empfindlich gegen elektrostatische Entladung ist, als wenn ein Amateur mit seiner offenen Himbeere spielt, und natürlich ohne Anti-Elektrostatik-Gerät. Frank Sixteen vor 7 Jahren 0
Danach fiel mir auf, dass diese Karte Klasse 8 war. Dies ist weniger als die empfohlene Klasse 10. Ich denke, das war mein Problem, kombiniert mit dem oben genannten. ZuluDeltaNiner vor 7 Jahren 0