Hallo, ich habe mehrere defekte USB-Sticks. Einer läßt sich nicht vollständig formatieren. Bei einem anderen verliert er ständig die Partionierung. Ein anderer wird nicht erkannt. Die Daten darauf sind mir egal; sind also zum spielen... Kennt jemand OSS Software Tools um z.B. per Low Level Funktionen auf die einzelnen Sektoren zuzugreifen, um diese zu testen? Wie kommt man an das Betriebssystem bzw. die abgelegten Einstellungen heran? Im Prinzip möchte ich diese softwaremäßig sezieren. Also alles auslesen, testen und nach Möglichkeit verändern. Hat jemand auch eine passende Dokumentation zu dem Thema? Jogibär
Michael J. schrieb: > um z.B. per Low Level Funktionen auf die > einzelnen Sektoren zuzugreifen, um diese zu testen? Was stellst Du Dir unter "low level"-Funktionen vor? Was ein USB-Stick macht, ist in der USB-Spezifikation für "Mass Storage Devices" beschrieben. Michael J. schrieb: > Wie kommt man an das Betriebssystem bzw. die abgelegten Einstellungen > heran? Welches Betriebssystem magst Du meinen? Welche Einstellungen? Zwar ist in einem USB-Stick ein Controller verbaut, der das "Mass Storage Protocol" interpretiert und in entsprechende Zugriffe auf den verbauten Flash-Speicher umsetzt, aber weder ist standardisiert, wie er das tut, noch ist irgendeine Art und Weise standardisiert, wie man an dessen Firmware herankommt, oder wie und ob überhaupt irgendwelche Parameter dessen Verhalten beeinflussen. Da kocht jeder Hersteller dieser Controller sein eigenes, komplett undokumentiertes Süppchen.
Hallo, leider habe ich mir das schon so gedacht. Ich hätte gern z.b. die Liste der defekten Blöcke; wo die Infos liegen über z.b. Größe, Hersteller,Bezeichnung usw. So viele Hersteller dürfte es gar nicht mehr geben; das wird doch alles eingekauft. Mit dem Betriebssystem meinte ich den Controller, das ist doch meistens ein MC51 Derivat. Und vor allem, wo sich alles versteckt und wie man darauf zugreifen kann. Mit Low Level meinte ich, das ich direkt auf die einzelnen Speicherblöcke zugreifen kann. Jogibär
Michael J. schrieb: > Mit Low Level meinte ich, das ich direkt auf die einzelnen > Speicherblöcke zugreifen kann. Dafür müsstest du den Speicherbaustein auslöten und mit einem eigenen Controller ansprechen.
Michael J. schrieb: > So viele Hersteller dürfte es gar nicht mehr geben; das wird doch alles > eingekauft. Dann mach halt ein paar USB-Sticks auf, sieh nach, was drin ist, und suche nach Datenblättern oder weiteren Informationen über diese Controller.
Hallo Michael J., ich verstehe Dein Anliegen nicht. Wenn es um den Aspekt der Datenrettung geht, interessiert mich nur ein Abbild der USB-Speichers, also eine serielle Folge aller Speicherblöcke in aufsteigender Nummerierung bezogen auf die LBA (logical block address) in Verbindung mit der Information, welche Blöcke nicht lesbar waren. Welchen Wert haben denn die Rohdaten im Flashspeicher für Dich, die der Stick den LBA-Nummern zuordnen muss? Die können doch theoretisch wie Kraut und Rüben liegen und die Zuordnung der Blöcke nach außen ist wahrscheinlich nicht offensichtlich. Handelt es sich hier wieder um ein geheimes Projekt? :)
Hallo, das ist kein "geheimes" Projekt. Der Hintergrund ist, daß ich den aktuellen Zustand des Sticks nicht auslesen bzw. bestimmen kann. Bei Festplatten habe ich SMART, bei USB Sticks anscheinen nichts. Dort gibt es nur geht oder geht nicht. Weder weiß man, daß z.b. die fehlerhaften Blöcke zugenommen haben oder ähnlich problematisches. Wenn er hin ist, dann meistens sofort. Ohne Warnmöglichkeit. Jogibär PS: war von mir anscheinend eine Schnapsidee (ohne Schnaps;-))
Ich hatte mal ein Chinesisches Tool zum Controller flashen und zum Low Level Partitionieren unter Windows XP, ist aber durch die Win7/10 Updates verloren gegangen.
Ich musste bis jetzt nur einen USB-Stick wieder reanimieren. Kaputt gegangen ist er an einer USB-PC-Card deren Spannungsversorgung fuer den USB-Port wohl etwas schwach war. Das hat die Firmware im Stick korrumpiert. Ich hatte Glueck, und es gab tatsaechlich eine Software, mit der man eine neue(!) Firmware wieder auf dem Stick installieren konnte. Der verwendete Controller war von Alcor. Der Bootlader im Stick, konnte ohne die Firmware immerhin noch mit SCSI-Kommandos examiniert werden. So konnte ich z.B. den Hersteller des Conrollers ohne(!) den Stick zu oeffnen, auslesen. Das geht unter Windows mit dem Kommandozeilen Tool "plscsi". Mit GUI ist mir da nichts bekannt, und fuer Linux auch nicht. Man braucht aber schon recht gute Kenntnisse, wie SCSI-Befehle funktionieren. Im Prinzip konnte man damit auf dem Stick wohl fast alle SCSI-Kommandos, da gibt es z.B. auch "Block lesen", ausfuehren. Das mag bei anderen Stick-Herstellern aber auch wieder anders sein. YMMV.
Motopick schrieb: > Ich musste bis jetzt nur einen USB-Stick wieder reanimieren. > Kaputt gegangen ist er an einer USB-PC-Card deren Spannungsversorgung > fuer den USB-Port wohl etwas schwach war. > Das hat die Firmware im Stick korrumpiert. > > Ich hatte Glueck, und es gab tatsaechlich eine Software, mit der > man eine neue(!) Firmware wieder auf dem Stick installieren konnte. > Der verwendete Controller war von Alcor. > > Der Bootlader im Stick, konnte ohne die Firmware immerhin noch > mit SCSI-Kommandos examiniert werden. So konnte ich z.B. den > Hersteller des Conrollers ohne(!) den Stick zu oeffnen, auslesen. > Das geht unter Windows mit dem Kommandozeilen Tool "plscsi". > Mit GUI ist mir da nichts bekannt, und fuer Linux auch nicht. > Man braucht aber schon recht gute Kenntnisse, wie SCSI-Befehle > funktionieren. Im Prinzip konnte man damit auf dem Stick wohl fast > alle SCSI-Kommandos, da gibt es z.B. auch "Block lesen", ausfuehren. > > Das mag bei anderen Stick-Herstellern aber auch wieder anders sein. > > YMMV. Hallo, das muß dann aber meiner Meinung nach von dem USB Chip unterstützt werden. SMART (HDD) über USB Adapter funktioniert nur bei wenigen. Das soll auch über SCSI Kommandos laufen. Bei mir über keinen Adapter, den ich habe. Bei USB Sticks ist dies gar nicht vorgesehen. Jogibär
Michael J. schrieb: > Hallo, > > das muß dann aber meiner Meinung nach von dem USB Chip unterstützt > werden. > SMART (HDD) über USB Adapter funktioniert nur bei wenigen. > Das soll auch über SCSI Kommandos laufen. > > Bei mir über keinen Adapter, den ich habe. > Bei USB Sticks ist dies gar nicht vorgesehen. > > Jogibär Es tut mir ja leid, aber zu deinen frustrierenden Ergebnissen kann ich nichts sagen. Der USB-Chip war wohl einer von NEC/Renesas, und es waren auch keine "speziellen" Treiber o.ae. installiert. Hast du den Zugriff mit "plscsi" schon einmal versucht? Wenn, dann werden die Smartwerte vermutlich auch nur ein "Datenblock" bei den SCSI-Status/Konfigurationsseiten sein. Viel Erfolg!
https://www.youtube.com/watch?v=9p7GcToOhaw https://www.usbdev.ru/files/chipgenius/ https://www.elektroda.com/rtvforum/topic3508524.html https://sosfakeflash.wordpress.com/2008/11/01/where-to-download-alcor-tools-to-fix-fake-usb-flash-drives/comment-page-1/ Irgendeines dieser Tools war es, ich zum Testen zu Faul.
Werter Jogibaer, Michael J. schrieb: > PS: war von mir anscheinend eine Schnapsidee (ohne Schnaps;-)) Spieltrieb ist ein legitimes Motiv - ohne Spieltrieb kein Fortschritt! Für den Anfang probiere 'mal ddrescue von der Gnu-Foundation auf dem "nackten" Gerät aus. Die Ausgabe musst Du nicht irgendwo hinschreiben /dev/null reicht aus. Wichtig ist, dass Du eine Logdatei verwendest und Du die hinterher sicherst. Da steht dann detailliert drin, was Du zusammengefasst im Terminal-Fenster siehst. Von diesem machst Du bitte ein Bildschirmfoto oder eine Textkopie. Viel Erfolg!
In den Anhaengen einmal eine SCSI-Inquiry mit "plscsi", und was Diskinfo als Smartwerte liest. Angeschlossen war die Platte ueber einen Logilink USB-SATA-Adapter.
Michael J. schrieb: > Kennt jemand OSS Software Tools um z.B. per Low Level Funktionen auf die > einzelnen Sektoren zuzugreifen, um diese zu testen? Wenn /dev/sdb dein USB Stick ist, dann kannst du mit cp /dev/sdb testdatei.bin Den ganzen Stick im Rohformat in diese Datei kopieren.
Mit USB-Sticks funktioniert "plscsi" auch heute noch. Ein wenig SCSI ist wohl in allen drin. :) Der zweite ist uebrigens einer von Philips. Da war ein "Branding" wohl zu teuer. :) Was das Kopieren an Erkenntnissen bringen soll? Mit einer kaputten Firmware kopiert sich da exakt gar nichts. Und mit einer halb kaputten Firmware/Status, wird man auch nur erratische Daten lesen koennen. Ein Erkenntnisgewinn haelt sich da in Grenzen.
Dein Lowlevel-Tool heisst scsi generic device. Da gibt es unzaehlige Wrapper u.a. auch fuer Python um alle moeglichen Vendor-SCSI-Kommandi an die Dinger zu schicken. Jetzt musst du nur noch etwas detektivische Arbeit aufwenden, den Controller zu ermitteln (meistens reicht VID:PID-Recherche). Die Taiwan-Derivate wie Phison usw. haben oft in der Tat 8051-kompatible Kerne drin, die man auch selber programmieren kann. Deren Datenblaetter findet man auch auf chinesischen Tauschforen - auf chinesisch. Die meisten Architekturen aehneln dem uralten "Chip for People" (CFP8051 o.aeh). Der Gag bei solchen Chips besteht meistens darin, die richtigen SCSI-Kommandi an die Chips zu schicken, mit denen man dann an die Interna wie die Firmware rankommt, oder seine eigene Firmware in die Bootbloecke reinschreibt. Aber nicht, dass du dann deinen modifizierten Stick auf dem Parkplatz eines bekannten Frankfurter Geldwaescheinstituts verlierst, ne.
Martin S. schrieb: > Aber nicht, dass du dann deinen modifizierten Stick auf dem Parkplatz > eines bekannten Frankfurter Geldwaescheinstituts verlierst, ne. Ist mir allerdings schon mal passiert. da war aber nur Wirecard in der Nähe. Zum Glück ein lupenreines seriöses Unternehmen... Naja, da habe ich ja ein Fass aufgemacht. Dachte nicht, das es so schwierig ist. Jogibär
Michael J. schrieb: > ich habe mehrere defekte USB-Sticks. > Einer läßt sich nicht vollständig formatieren. je nach Dateisystem und Partitionierung normal. Passiert oft mit Etcher oder Rufus bei falschem Parameter (Stick exotisch, zu groß usw.) UNTER WIN: Vermurkster Stick mit Bordmitteln erst löschen (clean-Befehl in diskpart) DOS/CLI https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/diskpart GUI https://www.diskgenius.com/partition-management.php Das Tool legt flugs mehrere WIN oder X-Partitionen an. Hilft wenn Stick zu groß und f. Spezialfälle monitoring https://learn.microsoft.com/en-us/windows-server/storage/disk-management/overview-of-disk-management Falls echt kaputt, dann hilft noch das da: KILL https://www.hackster.io/kedarnimbalkar/how-to-make-a-usb-kiiler-tester-from-a-3-ionizer-fee2e6
Hallo, ja sowas ähnliches suche(te) ich für Linux. Ich bin ja auch manchmal unglaublich naiv... Dachte, da kann man mit geringem Aufwand was machen. Die meisten defekten Sticks sind von Intenso mit 64GB. Mit dem durchsichtigen orangen Gehäuse. Sind zwar spottbillig und unglaublich langsam, aber die Haltbarkeit ist mies. Werde in Zukunft auf diese verzichten. Trotzdem Danke an alle. Jogibär
Hallo Jogibär, ein Programm zum Testen und Korrigieren von Flash-Speicher für Linux sind die f3 Tools. Einfach Mal mit apt-get f3 installieren und dann als root das entsprechende mit Parametern starten. Beschreibung z.B. hier https://fight-flash-fraud.readthedocs.io/en/latest/index.html Das verwende ich bei jedem neuen Speicher, denn manchmal stimmt der Aufdruck nicht mit der wirklichen Kapazität überein ;-) . Dann kann man das damit korrigieren und den Speicher problemlos verwenden. ich hoffe geholfen zu haben ... Maria S.
Hallo Kurt, Kurt schrieb: > Michael J. schrieb: >> ich habe mehrere defekte USB-Sticks. >> Einer läßt sich nicht vollständig formatieren. > > je nach Dateisystem und Partitionierung normal. Passiert oft mit Etcher > oder Rufus bei falschem Parameter (Stick exotisch, zu groß usw.) bitte erkläre mir, was "exotische" Sticks sind. Was sind denn "falsche Parameter"? Machen Etcher und Rufus etwas falsch? Danke!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.