Manchmal ist meine SD-Karte "beschädigt" und dies führt zu vielen Lese- / Schreibfehlern. Wenn Sie die SD-Karte an Windows 7 anschließen und die Option "Fehlerprüfung" (Klicken Sie mit der rechten Maustaste auf das Laufwerk> Extras> Fehlerprüfung) auswählen, wird die Beschädigung festgestellt und behoben.
Gibt es ein Tool oder eine App, um SD-Karten auf Laufwerksfehler zu überprüfen und diese vom Android aus zu beheben ?
Ich möchte auch erwähnen, dass ich auf einem gerooteten froyo mit installierter busybox bin.
file-system
external-sd
Irfan
quelle
quelle
su
und die auszuführen/system/bin/fsck.exfat
?No such file or directory
/system/xbin
stattdessen in? Versuchencd
Sie, in das Verzeichnis zu gelangen undls fsc*
zu überprüfen, was verfügbar ist. Muss irgendwo sein :)Antworten:
Sie können dies mit Hilfe von root und einem Terminalemulator (z. B. Android Terminal Emulator oder alternativ mithilfe von
adb shell
) beheben . Die zu erledigende Binärdatei wird aufgerufenfsck
und befindet sich normalerweise entweder in/system/xbin
oder/system/bin
. Manchmal benötigen Sie eine spezielle Variante davon , die genannt werden könnten , zum Beispielfsck.exfat
oder dergleichen Also zuerst lasst uns sicherstellen , dass wir die richtige binäre finden.:Wenn nicht gefunden, wiederholen Sie mit
/system/bin
. Ich gehe hier davon aus, dass es an erster Stelle gefunden wurde und einfach aufgerufen wirdfsck
(passen Sie das Folgende entsprechend an, wenn das nicht der Fall ist).Da es sich
fsck
um den "Linux-Kern" handelt, können wir dessen Manpage für die Syntax zu Rate ziehen . Obwohl es einige Optionen gibt, die unter Android nicht funktionieren, sollten die grundlegendsten Optionen verwendet werden. Weitere Informationen finden Sie auf der verlinkten Manpage (oder führen Sie eine Linux-VM aus und verwenden Sie diese,man fsck
falls diese Seite nicht mehr angezeigt wird). Ich werde mich an die folgenden Grundlagen halten:Zuerst müssen wir das Gerät finden, an das Ihre SD-Karte gebunden ist. Wenn es eingehängt ist,
mount
hilft uns der Befehl:Das war's im Grunde: Überprüfen Sie die Ausgabe und sehen Sie, wo sich Ihre SD-Karte befindet. Normalerweise wird dies verwendet
vold
, es ist jedoch je nach Gerät unterschiedlich. Die Ausgabe kann beispielsweise Folgendes enthalten:/dev/block/vold/179:17 on /mnt/storage/sdcard
In diesem Fall ist der erste Teil meines Zitats unser Gerät. Um das "Laufwerk" zu reparieren, müssen Sie es zuerst aushängen. Dies kann über das Einstellungsmenü oder, wie wir gerade im Terminal sind, durch Ausgabe erfolgenJetzt können wir uns an die Reparatur machen. Die grundlegende Syntax lautet:
Also versuchen wir zuerst den einfachsten Ansatz und hoffen
fsck
, alles selbst herauszufinden:Was im Grunde bedeutet: Zeige Fortschritt (-C) und fordere den Benutzer immer auf, etwaige Fehler zu reparieren (-r)
/dev/block/vold/179:17
. Wenn dies nicht funktioniert, informieren Sie sich in der verlinkten Manpage über weitere Optionen.quelle
cd
Schritte auch selbst speichern, indem Siels /system/bin/fsc*
undls /system/xbin/fsc*
aus Ihrem aktuellen Arbeitsverzeichnis verwenden. Sie können die beiden sogar zu einem Befehl kombinierenls /system/xbin/fsc* /system/bin/fsc*
.umount
, musst du root sein?/dev
).danke dafür, das spart mir den tag :)
quelle
Wenn Sie wiederholt Fehler auf Ihrer SD-Karte haben, sollten Sie mit H2testw (Link nur in Deutsch, Software in Deutsch und Englisch. Ich glaube, dies ist die offizielle Heimat trotz gegenteiliger Erscheinungen) sicherstellen, dass sie wirklich die angegebene Kapazität hat . Fehlerhafte SD-Karten werden automatisch beschädigt.
quelle
Ich habe eine App auf dem Markt gefunden, die beschädigte SD-Karten reparieren und nach fehlerhaften Blöcken suchen kann.
https://play.google.com/store/apps/details?id=com.sylkat.AParted&hl=de
quelle
Wenn ich mich nicht irre, können Sie android zwingen, sowohl den internen als auch den externen Speicher beim Neustart zu überprüfen, indem Sie je nach ROM die folgenden Schritte ausführen.
Führen Sie die Terminal-App aus und geben Sie ein
Starten Sie dann neu.
Wenn Ihr Telefon nicht gerootet ist, schlägt dies definitiv fehl.
Quelle: http://forum.xda-developers.com/showpost.php?p=57027579&postcount=20
quelle
fsck
tatsächlich ausgeführt wurde oder nicht?touch /forcefsck
funktioniert nur auf einem Gerät mit einem Init-Skript, das das Vorhandensein einer/forcefsck
Datei überprüft . Ich kenne kein einziges Android-Gerät mit einem solchen Init-Skript. Obwohl Ihre Technik wahrscheinlich auf Debian-, Ubuntu- und Mint-Geräten funktioniert, bezweifle ich stark, dass sie auf jedem Android-Gerät funktioniert. Wenn jemand auch nur ein einziges Android-Gerät mit einem Init-Skript findet, nach dem gesucht wird/forcefsck
, lass es mich wissen! Antworte einfach auf diesen Kommentar.