USB-Stick analysieren

SteWo

OpenBSD User
Moinsen!

Ein wenig ist es OT, da kein inhärentes OpenBSD-Problem: Ich möchte mittels OpenBSD 4.3 einen USB-Stick analysieren. Das Problem ist ein "magischer" Speicherverbrauch... Doch zunächst ein paar Infos.

Der Stick heißt USB8G, weil er eine Kapazität von rund 8GB hat. Unter OpenBSD wird er unter /dev/sd0 als /usb gemountet. Funktioniert soweit auch alles wunderbar. Nur: Irgendwie gibt es ein "schwarzes Loch" auf dem Stick in Höhe etwa der halben Kapazität, rd. 3 GB. Dieses möchte ich analysieren und weiß nicht wie. Habt ihr eventuell eine Idee, die mich weiterbringen könnte???

Da die Dateien gesichert sind: Wie würdet ihr das Teil formatieren - etwa wie folgt?
Code:
$ sudo newfs_msdos -F 32 -L USB8G

Vielen Dank und
Gruß!
SteWo

Hier noch ein paar Eckdaten zu dem Teil:
$ sudo fdisk sd0
Disk: sd0 geometry: 1043/255/63 [16760832 Sectors]
Offset: 0 Signature: 0xAA55
Starting Ending LBA Info:
#: id C H S - C H S [ start: size ]
-------------------------------------------------------------------------------
0: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
1: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
2: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
3: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
$ sudo disklabel sd0
# /dev/rsd0c:
type: SCSI
disk: SCSI disk
label: USB Flash Disk
flags:
bytes/sector: 512
sectors/track: 63
tracks/cylinder: 255
sectors/cylinder: 16065
cylinders: 1043
total sectors: 16760832
rpm: 3600
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0 # microseconds
track-to-track seek: 0 # microseconds
drivedata: 0

16 partitions:
# size offset fstype [fsize bsize cpg]
c: 16760832 0 unused 0 0
i: 16760832 0 MSDOS
$ sudo du -h /usb
1.3G /usb
$ ls -alh /usb
total 2801860
drwxr-xr-x 1 root wheel 132K Jan 1 1980 .
drwxr-xr-x 18 root wheel 512B Apr 15 11:57 ..
-rwxr-xr-x 1 root wheel 190M May 7 11:04 Bilder.zip
-rwxr-xr-x 1 root wheel 629M May 7 11:12 Muppy-Minisys-Linux-Standard-008.3-DE.iso
-rwxr-xr-x 1 root wheel 549M Apr 8 19:30 anonymos-shmoo.iso
... und schließlich der Auslöser - der Wert unter "Used" passt nicht zu den vorherigen Angaben! Anstelle der 1.3 GB, die "du" ermittelt hat, werden nun 4.3 G angegeben. Ja - wie jetzt???
$ sudo df -h /usb
Filesystem Size Used Avail Capacity Mounted on
/dev/sd0i 8.0G 4.3G 3.7G 53% /usb
 
Das ist aber nicht das Problem von den manipulierten USB-Sticks, die dem System vorgaukeln eine größere Kapazität zu haben als sie tatsächlich haben?!?

Schau mal was im heise Ticker dazu stand. Falls das auf Dich zutrifft, hilft wohl nur den Stick wegzuwerfen und neuen kaufen.

Gruß
SolarCatcher
 
vielleicht einfach mal ne 7-8 GB große Datei aus /dev/random erstellen. auf den stick kopieren, wieder runterkopieren und vergleichen. oder vielleicht in 100/200 MiB Happen voll schreiben. Ansonsten... einfach mal nen ordentlichen kaufen.
 
Problem gelöst

Hallo zusammen!

Zunächst einmal „Herzlichen Dank“ für die Tipps und Hinweise. Ihr habt geholfen, mein Problem zu lösen! Für den Fall, daß andere vor dem gleichen Problem stehen, schildere ich mal etwas ausführlicher meinen Weg.

Gleich @SolarCatcher’s Hinweis auf den Heise-Artikel brachte mich weiter: In dem angegebenen Artikel wird auf ein c’t-Tool hingewiesen, welches USB-Sticks überprüfen kann: H2testw. Das liegt (wie üblich - seufz) leider nur als M$-exe vor, leistet aber genau das, was mein Problem löst: Es analysiert den Stick.

Das schwierige an dem weiteren Vorgehen war, sich an das Passwort für die M$-Partition zu erinnern ... brauch’ ich halt so selten.

In den Anlagen findet ihr zwei Bilder: Bild1 gibt den Start des Prüfvorgangs wieder, Bild2 das Ergebnis und das Protokoll ergibt das Folgende:
Achtung: Nur 3809 von 8168 MByte getestet.
Der Datenträger ist wahrscheinlich defekt.
646,6 MByte OK (1324246 Sektoren)
3,0 GByte DATEN VERLOREN (6476586 Sektoren)
Details:
0 KByte überschrieben (0 Sektoren)
0 KByte leicht verfälscht (< 8 Bit/Sektor, 0 Sektoren)
3,0 GByte mit Datenmüll (6476586 Sektoren)
0 KByte mehrfach genutzt (0 Sektoren)
Erster Fehler bei Offset: 0x000000002749ac00
Soll: 0x000000002749ac00
Ist: 0xffffffffffffffff
H2testw Version 1.3
Schreibrate: 12,0 MByte/s
Leserate: 11,7 MByte/s
H2testw v1.4
Kurz – Stick wird als "defekt" erkannt!

Nun ja: Als nächstes habe ich den Stick unter XP formatiert. Dann bin ich sicherheitshalber auch noch einmal mit Eraser über den Stick gegangen und habe den unbenutzten Speicherplatz (=alles) überschrieben (da ich M$ selbst beim formatieren nicht über den Weg traue).

Jetzt kam das von @zuglufttier vorgeschlagene TestDisk zum Einsatz. Da ich ohnehin in M$ unterwegs war, habe ich auch die .exe-Version genutzt. Ich habe zunächst die einfache Analyse über den Stick laufen lassen und danach noch einmal jeden Cylinder einzeln. Zusammengefasstes Ergebnis: Scheinbar alles „im grünen Bereich“.

Dann habe ich noch einmal H2testw auf den Stick losgelassen. Ergebnis: Stick ist kaputt... :mad:.

OK – ein letzter Check: Ich kopiere runde 8 GB Daten auf den Stick und versuche, diese auf einem zweiten Rechner wieder auszulesen. Die Dateien werden auch wunderbar alle angezeigt und das Volume als "Voll" angegeben. Nur sind ALLE Dateien geschrottet und lassen sich nicht öffnen. Ergebnis: Stick ist und bleibt kaputt... :mad:.

Letztendlich bleibt mir nur noch, die OpenSource-Version von TestDisk unter OpenBSD zu installieren, damit ich künftig USB-Sticks und andere Laufwerke routinemäßig checken kann.

Zum Schluß noch ein Hinweis für diejenigen, die auf einem USB-Stick abgelegte Daten „retten“ müssen (war nicht mein Problem): Neben TestDisk bietet cgsecurity auch das Programm „Photorec“, mit dessen Hilfe eventuell noch vorhandene Daten auf einem Stick (und anderen Medien) gerettet werden können. Bislang musste ich jedoch nicht darauf zurückgreifen, kann also nicht viel mehr dazu beitragen

Noch einmal vielen Dank!

Grüße,
SteWo
 

Anhänge

  • usb8g_bild1.png
    usb8g_bild1.png
    24,2 KB · Aufrufe: 316
  • usb8g_bild2.png
    usb8g_bild2.png
    16,4 KB · Aufrufe: 336
Zurück
Oben