Mein Freund hatte Probleme mit einem USB-Stick, und ich schlug vor, dass er ein Low-Level-Format erstellt. Dann kam mir der Gedanke, dass ich nicht einmal weiß, wie man das unter Linux macht. Also ... wie kann ich Flash-Speicher auf niedriger Ebene unter Linux formatieren? Mein Freund hat versucht, ein "Vollformat" auf dem Laufwerk in Windows und es ist fehlgeschlagen.
quelle
mkfs
ist seine einzige Option? Was ist, wenn das nicht funktioniert? Es gibt nichts anderes, was er versuchen kann?fsck
, das Äquivalent von dos'schkdsk
.mkfs
fehlschlägt,fsck
hilft das nicht.f3
, um sicherzustellen, dass er nicht kaputt geht.Low-Level-Formatierung bedeutet für verschiedene Personen und in verschiedenen Kontexten viele verschiedene Dinge.
Die ursprüngliche Bedeutung war ein Schritt, der bei der Formatierung von Datenträgern erforderlich war - Datenträger benötigen Header, Synchronisierung und andere Muster, die auf den Datenträgern geschrieben sind, bevor Daten darauf gespeichert werden können. Auf diese Weise kann der Kopf erkennen, wann er sich A) auf einer Spur befindet und B) wo er sich auf der Spur befindet. Das Formatieren einer Diskette auf niedriger Ebene bereitet die Diskette darauf vor, Blöcke lesen und schreiben zu können. Frühe MFM- und RLL-PC-Festplatten können auf niedriger Ebene formatiert werden, häufig mithilfe eines Dienstprogramms, das im ROM des Festplattencontrollers (einer ISA-Karte) integriert ist. Moderne IDE- und SATA-Festplatten werden ebenfalls auf niedriger Ebene formatiert, jedoch nur im Werk.
Verschiedene andere Bedeutungen umfassen das Schreiben von Nullen in alle Blöcke, das Konfigurieren des Laufwerks zum Deaktivieren "versteckter" Bereiche wie HPA und DCO und das anschließende Nullsetzen aller Blöcke oder andere Dinge, die eher mit Partitionierung als Formatierung zu tun haben.
Raw Flash benötigt werksseitig einen anderen ersten Vorbereitungsschritt - jeder Flash "Eraseblock" (analog zu einem "Block" auf Datenträgern) muss getestet und als fehlerhaft markiert werden, wenn er tatsächlich fehlerhaft ist. Jeder "Eraseblock" hat einen zusätzlichen kleinen "OOB" -Block, der Fehlerkorrekturinformationen enthält - und an dieser Stelle wird er als fehlerhaft markiert. Sie möchten diesen Schritt NICHT wiederholen, da das Schreiben in einen fehlerhaften Block Sie daran hindern könnte, das bestimmte Bit, das ihn als fehlerhaft identifiziert, erneut zu setzen.
Aber Sie haben es nicht mit Raw Flash zu tun. Sie haben es mit einem USB-Stick zu tun. In allen Flash-Laufwerken befindet sich ein Controller-Chip, der USB-Befehle vom Host akzeptiert und im Auftrag des Hosts mit dem internen Raw-Flash kommuniziert. Einige dieser Controller-Chips können so konfiguriert werden, dass sie einen Teil des Flashs als separate CD-ROM-Partition melden oder wie zwei separate USB-Speichergeräte funktionieren. Abhängig von der Marke und dem Modell des Controller-Chips finden Sie möglicherweise ein Wiederherstellungs- oder Konfigurationsdienstprogramm (wahrscheinlich nur Windows), mit dem dieser Controller-Chip zurückgesetzt werden kann. Sie beginnen damit, das Flash-Laufwerk zu öffnen, nach dem kleineren von (wahrscheinlich) zwei Chips auf der kleinen Platine zu suchen und etwas zu googeln. Die Marke und das Modell, die auf der Außenseite des Gehäuses aufgedruckt sind, helfen Ihnen wahrscheinlich nicht, herauszufinden, wer den Controller im Inneren des Gehäuses hergestellt hat.
quelle
Verwenden Sie dazu den
dd
Befehldd if=/dev/zero of=/dev/hda
Dadurch werden ALLE Daten auf der Festplatte, alle Bootsektorinformationen und alle Daten auf allen Partitionen gelöscht. Es macht die Festplatte jedoch nicht unbrauchbar, Sie haben lediglich eine saubere Festplatte, auf der nur Partitionen erstellt und ein neuer Bootsektor installiert werden müssen. Dies geschieht, wenn Sie ein beliebiges Betriebssystem einschließlich Linux oder Windows installieren. Dies ist eine gute Möglichkeit, um fehlerhafte Partitionen, Viren, fehlerhafte Installationen oder Daten, die Sie nicht sehen möchten, zu bereinigen.
quelle
/dev/zero
ein Flash - Speichergerät zu löschen. Siehe den Eintrag auf meinem Blog: fakkelbrigade.eu/chris/blog/2012/01/…badblocks -s -w -t 0xff /dev/?d??
. Sie erhalten alle 1en geschrieben und auch getestet.Es gibt keine Möglichkeit , ein Low-Level - Format auf den meisten Flash - Geräten zu tun, da sie eine zusätzliche Übersetzungsschicht von USB / ATA / SD / etc haben. zu MTD , die die Low-Level - MTD Geräte verschleiert (die können Low-Level - Formatierung direkt zu , wenn bekommen sein [was Sie nicht können]).
quelle
mkfs.vfat /dev/hda1
wird das Äquivalent des MSDOS "Format" -Befehls tun.quelle
Ich bin in der Vergangenheit auf Geräte gestoßen (allerdings schon seit einiger Zeit nicht mehr), die den Befehl SCSI FORMAT UNIT implementieren - unter Linux können Sie Folgendes verwenden:
sg_format --format / dev / sdX
Zurücksetzen dieser Geräte auf den Werkszustand (die USB-Speicherspezifikation ist von den älteren SCSI-Standards abgeleitet).
Ich glaube, dass einige neuere USB 3-Geräte auch ATA-Sicherheitsbefehle implementieren. Daher können Sie https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase verwenden, wodurch die Flash-Übersetzungsebene wahrscheinlich auf die Werkseinstellungen zurückgesetzt wird state (wie es normalerweise bei SSDs der Fall ist).
quelle
Es gibt so etwas wie ein Low-Level-Format für Flash-Speicher, aber es wird in Fabriken mit herstellerspezifischer Software durchgeführt.
Dazu müssen Sie direkt mit dem Speichercontroller-Chip sprechen. Leider konnte ich unter Linux keine Programme finden, die das können.
Es gibt Hersteller-Tools, die eine Formatierung auf niedriger Ebene durchführen und einige Einstellungen (z. B. LED-Verhalten, schreibgeschütztes Laufwerk) und Daten (z. B. Herstellername, Modellname, Seriennummer) auf den Speichercontroller-Chipsatz schreiben können. In der Regel handelt es sich jedoch um diese Tools sind nur für Windows gemacht und sind oft in Chinesisch.
Ein solches Tool heißt "FC MP Tools". Soweit ich das beurteilen kann, wurden diese von Alcor Micro entworfen und von FirstChip (FC) hergestellt. Anscheinend steht "MP" für "Massenproduktion".
Ich verwende die Version, die ich hier gefunden habe: http://down.upantool.com/file/software/mass/FristChip/2018/iTe_MpTools_20171130.zip
Weitere Links, denen Sie folgen können: https://repusb.cubava.cu/?page_id=2052 https://www.rmprepusb.com/tutorials/repair-your-usb-flash-drive http://reboot.pro/topic / 20865-alcor-micro-usb-pen-drive-repair / http://reboot.pro/topic/19901-no-alcor-mptool-is-recognising-my-usb/ https://www.elektroda.pl /rtvforum/topic3145335.html http://flashboot.ru/files/file/30/ http://www.flashdrive-repair.com/2014/05/download-fc-mptool-v402-for-fixing.html https : //www.cdrinfo.pl/download/356133849
Es läuft in Wine, erkennt aber die Laufwerk-Chipsätze nicht (es benötigt wahrscheinlich direkten Zugriff auf den USB-Controller, um es zu tun).
Damit dies funktioniert, benötigen Sie ein Flash-Laufwerk mit einem bestimmten Alcor-Chipsatz, der unterstützt wird. Auch hier hat jeder Anbieter seine eigene Software, die über USB mit den Controller-Chips kommuniziert.
Ich habe das:
Notieren Sie sich die Chipsatz- Teilenummer auf dem Mikrocontroller: FC1178 BC1 Das Programm FC MP Tools erkennt diesen Chipsatz als 1178BC :
Und die Software, die ich verlinkt habe, funktioniert unter Windows XP und 10. Sie stürzt jedoch ab, wenn Sie das Programm auf Englisch umstellen! Stellen Sie Ihre Einstellungen auf Englisch ein, starten Sie das Programm neu und ändern Sie nicht die Sprache - es sollte funktionieren. Vielleicht wird es in einer neueren Version behoben.
Wie auch immer - verschiedene Anbieter haben unterschiedliche Tools, es ist ein Hasenloch, es gibt keinen Standard bei AFAIK und (zumindest dieses Tool) funktioniert leider nur unter Windows.
Soweit ich weiß, testet dies den Speicherchip und schreibt eine fehlerhafte Sektorkarte auf den Controller-Chip, sodass dem Betriebssystem nur guter Speicher zur Verfügung steht. Auf diese Weise können auch teilweise beschädigte Chips verwendet und verkauft werden. Diese werden wahrscheinlich in der Fabrik nach Qualität sortiert und auf unterschiedliche Kapazitäten formatiert. Dies nennt man Binning.
Vielleicht können wir es tun, wenn jemand eine Menge dieser Tools sammeln, zurückentwickeln und ein universelles Open-Source-Tool für Linux erstellen kann - andernfalls sehe ich das nicht.
quelle
Obwohl eine Formatierung auf niedriger Ebene, wie sie auf Festplatten- und Diskettenlaufwerken durchgeführt wurde, für ein Flash-Laufwerk keinen Sinn macht, gibt es herstellerspezifische Dienstprogramme für Flash-Laufwerke mit "niedriger Ebene": Dies ist ein Beispiel: Alcor-Dienstprogramm für niedrige Ebene
Ich bin auf diese Frage gestoßen, als ich nach einem solchen Dienstprogramm gesucht habe, das unter Linux funktionieren würde. Es scheint jedoch, dass es den Herstellern von Flash-Laufwerken egal ist, uns glücklich zu machen.
quelle