Auf die externe Festplatte kann nicht zugegriffen werden. "Die Festplattenstruktur ist beschädigt und nicht lesbar."


11

Ich habe eine externe TBG AgentGoFlex Seagate-Festplatte.

In letzter Zeit verursachte es einige Probleme wie einige Ordner, in denen Daten keine Dateien zeigten. Einige Ordner wurden nicht geöffnet usw.

Also habe ich versucht, chkdskunter Windows 8 zu laufen , aber es wurde nicht erfolgreich abgeschlossen. Also habe ich die Festplatte gelöst. Wenn ich jetzt die Festplatte an das System anschließe, wird sie nicht erkannt. Unter Linux wird es überhaupt nicht erkannt.

Wenn ich in Win8 versuche, über die Eingabeaufforderung auf die Festplatte zuzugreifen, wird "Die Festplattenstruktur ist beschädigt und nicht lesbar" angezeigt.

Sogar chkdskschlägt jetzt mit dem Fehler fehl: "Das Dateisystem ist NTFS. Volume-Version und -Status können nicht ermittelt werden. Chkdsk abgebrochen."

Wenn Sie versuchen, das Dienstprogramm "check" über F auszuführen : → Rechtsklick → Eigenschaften → Extras → Prüfen, wird der folgende Fehler angezeigt.

Fehler-Screenshot: Die Festplattenprüfung konnte nicht durchgeführt werden, da Windows nicht auf die Festplatte zugreifen kann

Das Formatieren der Festplatte ist keine Option, da ich sehr wichtige Daten darauf habe.

Bitte schlagen Sie vor, was getan werden kann, um den Zugriff auf die Festplatte zu ermöglichen.


1
Wenn Sie Ihre Festplatte nicht an ein professionelles Datenrettungsunternehmen senden können, besteht die nächstbeste Lösung darin, ein Image Ihrer Festplatten im aktuellen Zustand zu erstellen (bevor die Festplatte vollständig ausfällt). Anschließend können Sie die Image-Datei als "sichere Kopie" aufbewahren und versuchen, die Festplatte oder eine duplizierte Image-Datei wiederherzustellen. Ich bin mir sicher, dass Linux zumindest in gewisser Hinsicht Ihr Laufwerk erkennt. Versuchen Sie also, einige kostenlose Tools für das Imaging von Datenträgern zu erwerben und das Image zuerst auf einen anderen Datenträger zu schreiben!
Waxhead

1
Ich fürchte, Ramhound hat vielleicht Recht, Ihr Laufwerk ist möglicherweise tot. Daten können wiederhergestellt werden, aber wenn Sie sie zu Hause ausführen, können noch mehr Dateien verloren gehen. Einige Fachleute können Ihnen möglicherweise helfen. Und denken Sie daran, es gibt nur zwei Arten von Menschen: diejenigen, die Backups erstellen, und diejenigen, die dies tun.
Gronostaj

Antworten:


10

Machen Sie zunächst nichts mehr auf der Festplatte ( schreiben Sie zumindest nie darauf). Die Festplatte, die nicht erkannt wird (im Gegensatz zu "erkannt und als leer oder mit unlesbaren Daten befunden"), scheint entweder auf eine vollständig gestrahlte Festplatte hinzuweisen, was chkdsknicht üblich ist, oder auf einen Fehler mit der Partitionstabelle oder der Geometrie der Festplatte oder wie das USB-Gehäuse damit umgeht. Ein Hardwarefehler ist ebenfalls möglich.

Dies kann und wird passieren, wenn USB-Gehäuse versuchen, zwischen der Festplatte und dem Computer, mit dem sie verbunden sind, zu verhandeln. Das erste, was zu tun wäre, wäre, ddunter Linux ein Image der Festplatte auf einer (offensichtlich größeren) Festplatte zu erstellen, die der physischen Ebene am nächsten kommt . Dann können Sie nach Herzenslust mit einer Image-Kopie herumspielen, ohne das Risiko einer weiteren Beschädigung der realen Festplatte.

Update: Geräteerkennung unter Linux

Wir haben nicht weniger als drei Entitäten auf unserer "externen Festplatte". Die Hardware des USB-Gehäuses wird als Blockgerät angezeigt. Die physische Festplatte im Gehäuse. Das physische Gerät, dh die Reihenfolge der LBA-Sektoren vom ersten bis zum letzten. Und schließlich null oder mehr Datenpartitionen, die die Dateisysteme hosten. Um auf einem Desktop "erkannt" und angezeigt zu werden, müssen alle Glieder der Ketten funktionieren. Um jedoch ein Bild des physischen Geräts aufzunehmen, benötigen Sie nur die ersten beiden. Wenn Sie das Gerät anschließen und die Befehlszeile dmesg(als Root) ausführen , sollte Folgendes angezeigt werden :

[4984939.028491] usb 8-6: new high speed USB device using ehci_hcd and address 3
[4984939.166658] usb 8-6: configuration #1 chosen from 1 choice
[4984939.170660] scsi7 : SCSI emulation for USB Mass Storage devices
[4984939.172003] usb-storage: device found at 3
[4984939.172005] usb-storage: waiting for device to settle before scanning

... welches ist das Gehäuse, das erkannt wird und sich und seinen Inhalt identifiziert:

[4984939.170660] usb 8-6: New USB device found, idVendor=1058, idProduct=1021
[4984939.170660] usb 8-6: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[4984939.170660] usb 8-6: Product: Ext HDD 1021
[4984939.170660] usb 8-6: Manufacturer: Western Digital
[4984939.170660] usb 8-6: SerialNumber: 574D43305431303831303734
[4984944.400970] usb-storage: device scan complete

Als Nächstes werden Sie der Fahrer sehen seine Geometrie der Natur zu informieren und ihre Geräteknoten implizit, hier sdd(für SCSI - Festplatten - Vier, da sda, sdbund sdcwurden bereits vergeben):

[4984944.404739] scsi 7:0:0:0: Direct-Access     WD      Ext HDD 1021    2021 PQ: 0 ANSI: 4
[4984944.404739] sd 7:0:0:0: [sdd] 1953519616 512-byte hardware sectors (1000202 MB)
[4984944.407367] sd 7:0:0:0: [sdd] Write Protect is off
[4984944.407369] sd 7:0:0:0: [sdd] Mode Sense: 17 00 10 08
[4984944.407371] sd 7:0:0:0: [sdd] Assuming drive cache: write through
[4984944.408741] sd 7:0:0:0: [sdd] 1953519616 512-byte hardware sectors (1000202 MB)

Dann erkennt der Kernel, dass eine Partition vorhanden ist (wenn Sie dies nicht sehen, ist die Partition nicht vorhanden oder ungültig):

[4984944.411497]  sdd: sdd1

Jetzt hat Linux alles, was es braucht und meldet erfolgreiche Anhänge:

[4984944.416739] sd 7:0:0:0: [sdd] Attached SCSI disk
[4984944.416739] sd 7:0:0:0: Attached scsi generic sg4 type 0

Und so beginnt die Suche nach Datenpartition, dh OK, wir haben sdd1, aber was ist da drin? und die Antwort lautet:

[4984997.498613] NTFS driver 2.1.29 [Flags: R/W MODULE].
[4984997.554613] NTFS volume version 3.1.
[4984997.568859] NTFS-fs error (device sdd1): load_system_files(): $LogFile is not clean.  Mounting read-only.  Mount in Windows.
[4985390.027808] NTFS-fs error (device sdd1): ntfs_remount(): Volume has errors and is read-only.  Cannot remount read-write.
[4985442.423299] NTFS volume version 3.1.
[4985442.425032] NTFS-fs error (device sdd1): load_system_files(): $LogFile is not clean.  Mounting read-only.  Mount in Windows.

Dies oben war ein "gutes" Reittier. Aber nur zu wissen , dass das Gerät sdd, oder sdcoder sdb, ermöglicht es mir , eine binäre Kopie zu machen (vorausgesetzt , ich habe genügend freien Speicherplatz auf /mnt/backupdisk): Eingabedatei /dev/sdd, Ausgabedatei DiskImage.raw, Blockgröße 1 MB :

# dd if=/dev/sdd of=/mnt/backupdisk/DiskImage.raw bs=1M

Beachten Sie, dass die Eingabedatei /dev/sdd und nicht /dev/sdd1 (oder eine andere Nummer) ist. Wenn ich wollte, konnte ich jetzt den Versatz der darin enthaltenen Datenpartition herausfinden DiskImage.rawund sie mit Hilfe eines Schleifengeräts bereitstellen. Hier finden Sie die schmutzigen Details.

Erster Wiederherstellungsversuch

Das zweite, was zu tun wäre, wäre, die physische Festplatte in ein anderes Gehäuse zu legen, um sicherzustellen, dass das Gehäuse in Ordnung ist, und die Chance zu erhalten, dass das neue Gehäuse die Festplatte richtig interpretiert. Wenn die Festplatte erneut angezeigt wird, ist möglicherweise das vorherige Gehäuse defekt. Nur für den Fall, sichern Sie alle neu gefundenen Laufwerksinhalte, überprüfen Sie die Sicherung, setzen Sie die Festplatte mit einem Dienstprogramm zum Überschreiben von Datenträgern auf Null, damit sie völlig dumm wird (Sie können nicht zwei Geräte mit unterschiedlichen Meinungen in einer Gerätekette haben), und formatieren Sie sie neu nativ von Windows und stellen Sie die Daten wieder her. Es ist ein Glücksfall, aber ich habe es gesehen; und der Versuch ist nicht zu teuer, gute Gehäuse für etwa 19,99 US-Dollar neu.

Falls das ursprüngliche Gehäuse fehlerhaft war, können Sie die Festplatte nicht neu formatieren oder auf die Festplatte kann nicht zugegriffen werden. Sie können das neue Gehäuse erneut versuchen. Wenn es funktioniert, ersetzen Sie entweder das alte Gehäuse oder verwenden Sie das neue weiterhin (dies lohnt sich jedoch, wenn das neue Gehäuse deutlich besser ist als ein El Cheapo für 19,99 US-Dollar).

Professionelle Genesung

Professionelle Wiederherstellungsdienste, die Sie bei Google finden können. Eine nicht allzu ehrliche Vorgehensweise wäre das Senden über die physische Festplatte und - falls Sie ein "Ja, es liegt kein Hardwareschaden vor und wir können alle Ihre Daten für nur US $ $$$, $ wiederherstellen." $$! " Antwort - Nun , Sie würden dann wissen, dass die Daten noch rettbar waren. Sie können also versuchen, dies bei der von Ihnen erstellten Image-Sicherung kostenlos selbst zu tun, und nur für die Diagnose und den Festplatten-S & H bezahlen. Wenn Sie versagt haben, besteht immer noch die Möglichkeit, den gewünschten Teig zu husten. Wenn es ist Hardware - Schäden, ist der professionelle Service Ihre im Grunde nur Option. Es gibt mehrere Voodoo-Tricks, die (vorübergehend) eine "tote" Festplatte wiederbeleben, oft lang genug, um zumindest die wichtigsten Daten wiederherzustellen.Keine , die garantiert jedes Mal funktioniert (Erwärmen, Abkühlen, "Drehen" der Festplatte - ich habe sogar vorgeschlagen, sie intelligent gegen eine harte Oberfläche zu klopfen). Alle von ihnen verursachen mehr Schaden, dh Sie müssen sicher sein, dass Sie den einen Trick verwenden, der beim ersten Mal funktioniert, sonst haben Sie die Festplatte für immer getötet. Ich habe dies nur hinzugefügt, um zu erklären, warum Sie Erfolgsgeschichten über wiederbelebte Festplatten sehen: Es gibt solche Geschichten. Aber wenn Sie (meistens) sicher sein möchten, dass es Ihnen passieren wird, stellen Sie einen Fachmann ein.

Wenn Sie sicher sind, dass die Hardware in Ordnung ist - Festplatten dreht sich, keine Rasseln, keine seltsamen Geräusche oder Brummen, keine klickenden Neukalibrierungen -, dann ist "alles" passiert, was dazu geführt hat, dass chkdskeinige Daten durcheinander gebracht wurden.

DIY Erholung

Die "Heim" -Wiederherstellung würde normalerweise so ablaufen (im Grunde das Gleiche, was die Profis tun würden, wenn der Hardwareschaden abgezinst worden wäre) und an der Disk-Image-Kopie arbeiten:

  • Überprüfen Sie, ob der erste Sektor des Festplattenabbilds eine gültige Partitionstabelle ist. Wenn nicht, scannen Sie das Disk-Image nach einer gültigen Partitionstabelle oder einem erkennbaren NTFS- oder FAT32-Bootsektor, je nachdem, welcher FS auf dem Gerät vorhanden war (für ein 1-TB-Gerät scheint NTFS die einzig logische Möglichkeit zu sein). In jedem Fall sollten Sie innerhalb der ersten Megabyte etwas finden.

  • Wenn die Partitionstabelle gefunden wird, überprüfen Sie, ob sich die Datenpartition dort befindet, wo die Partitionstabelle dies vorschreibt. Wenn dies nicht der Fall ist, sind dies sehr gute Nachrichten: Wahrscheinlich ist die Partitionstabelle alles, was falsch ist. Das Problem zu beheben ist einfach (mehrere Linux-Partitionseditoren erledigen das), und es wird erwartet, dass die Festplatte zu 100% wiederhergestellt wird. Versuchen Sie aus Sicherheitsgründen, die Datenpartition unter Linux mit einem Loop-Gerät im schreibgeschützten Modus zu mounten, um festzustellen, ob sie lesbar ist. Wenn dies der Fall ist, wird das Borking der Partition bestätigt, und die Festplatte kann auf dem Weg zu einer sicheren und vollständigen Wiederherstellung ausgesprochen werden. Ist dies nicht der Fall, ist möglicherweise die Partition richtig und ein (Teil) einer Datenpartition wurde neu geschrieben. Das ist schlecht; siehe unten unter "Dinge werden sauer".

  • Wenn es gefunden und gültig ist, überprüfen Sie es anhand der Laufwerksgeometrie. Wenn diese nicht übereinstimmen, ist dies auch eine gute Sache, da Sie möglicherweise die Hauptursache des Problems gefunden haben. Sie können die physische Geometrie in den Kernel zwingen (und beim Linux-Start abrufen ). Überprüfen Sie, ob die neue Geometrie dazu führt, dass die Festplatte unter Linux erkannt wird. Wenn dies der Fall ist, sichern Sie die Daten, überprüfen Sie, ob die Sicherung korrekt ist, und setzen Sie die Festplatte auf Null dd(ein paar Megabyte Nullen auf dem entsprechenden sdGerät reichen aus). Schalten Sie den Computer aus (nicht nur neu starten; OK, es ist paranoid, aber es kostet wenig und kann etwas bewirken), starten Sie dann Windows und lassen Sie die jetzt ahnungslose Festplatte in das Format formatieren, das sie für das beste hält. Dies stellt sicher, dass keine Konflikte mit Windows auftreten. Stellen Sie die Daten auf der Festplatte wieder her. Genießen.

  • Wenn der Geometrietrick nicht funktioniert oder die Partition nicht gefunden werden kann oder wenn sie einmal gefunden wurde, scheint sie leer zu sein, werden die Dinge sauer. Sie müssen einige Recovery - Werkzeug, das Scannen das Disk - Image auf der Suche nach den Datenbereichen (MFT, etc.) der verlorenen Daten. Und einmal gefunden, interpretieren Sie sie, um an die Daten zu gelangen. Dies ist eine schwierige Aufgabe und kann nicht immer vollständig automatisiert werden. Auf einer niedrigeren und verzweifelteren Ebene wird nach den Signaturen der einzelnen Dateien gesucht, in der Hoffnung, dass sie in zusammenhängenden Blöcken auf der Festplatte liegen. Diese Art von Operation würde ich jedoch gerne Profis überlassen. Ich habe es mehrmals gemacht, immer erfolgreich, mit alten FAT-Festplatten. Ich habe es erneut gemacht, ungefähr 50% erfolgreich, mit neueren und größeren und fragmentierteren FAT32-Festplatten. Ich habe es versucht ein paar Mal mit schlechten Ergebnissen (aber ich hatte vollständige Backups und gab nicht wirklich alles) auf den viel komplizierteren NTFS- und ext4-Dateisystemen.

Manuelle Wiederherstellung von Linux

OK, so dass Sie versuchen , die Partition in Linux zu montieren und Fehlermeldungen erhalten ( Beachten Sie, dass /dev/sdc und sind verschiedene Dinge - das Bild bezieht sich auf )./dev/sdcN /dev/sdc

# mount -t ntfs /dev/sdc1 /mnt/recovery
ntfs_mst_post_read_fixup_warn: magic: 0x00000000  size: 1024   usa_ofs: 0  usa_count: 65535: Invalid argument
Record 1 has no FILE magic (0x0)
Failed to open inode $MFTMirr: Input/output error

... dies scheint darauf hinzudeuten, dass die Partition, wie das System glaubt , falsch oder stark beschädigt ist. Schauen wir uns zuerst die erste Option an:

# fdisk /dev/sdc

Sie bekommen so etwas:

Disk /dev/sdc: 1000.2 GB, 1000204885504 bytes
1 heads, 63 sectors/track, 31008335 cylinders, total 1953525167 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x9d2b7596

Device       Boot      Start    End          Blocks       Id  System
/dev/sdc1              63       1953520127   976760032+   7   HPFS/NTFS/exFAT

Der nächste Schritt besteht darin, den tatsächlichen Start der Partition zu überprüfen. Durch Suchen in der Bilddatei (oder /dev/sdc) suchen wir nach der NTFS-Signatur:

  00000000:EB 52 90 4E 54 46 53 20 -20 20 20 00 02 08 00 00 .R.NTFS ........ 
  00000010:00 00 00 00 00 F8 00 00 -3F 00 FF 00 3F 00 00 00 ........?...?... 
  00000020:00 00 00 00 80 00 80 00 -4A F5 7F 00 00 00 00 00 ........J....... 

# dd if=/dev/sdc bs=512 count=1 skip=63 2>/dev/null | hexdump -C | head -n 1

... mit den obigen Daten erwarten wir, dass sich der NTFS-Start auf Sektor 63 befindet, deshalb setzen wir skip. Außerdem werden wir es mit jedem Sektor im ersten (sagen wir) Megabyte versuchen ...

# dd if=/dev/sdc bs=512 count=2000000 2>/dev/null | hexdump -C | grep "00:EB 52 90 4E 54 46 53"

... nur um sicherzugehen, dass es nur einen Bootsektor gibt (mir ist das passiert. Auf einer FAT32-Festplatte, aber immer noch ) und dass es nirgendwo Lesefehler gibt.

Dein Ergebnis

00007e00  eb 52 90 4e 54 46 53 20  20 20 20 00 02 08 00 00  |.R.NTFS    .....|

ist genau das, was wir erwarten würden: Sektor 63 ergibt einen Versatz von 63 × 512 = 32256 = 7e00 hexadezimal. Der NTFS-Bootsektor ist vorhanden und die Partitionstabelle scheint korrekt zu sein .

So kopieren wir nun einen großen Teil kann /dev/sdc1auf, sagen wir, /tmp/mydisk.imgund versuchen , es von Linux zu beheben. Dadurch wird die physische Festplatte nicht beschädigt, die für andere Versuche unverändert verfügbar bleibt. Und da wir jetzt wissen, dass der PT korrekt ist, können wir ihn /dev/sdc1für die Kopie verwenden und Hoffnungen hegen, die wir vorher nicht konnten:

# dd if=/dev/sdc1 of=/tmp/mydisk.img bs=1G count=10
...after copying 10 gigabytes...

# ntfsfix /tmp/mydisk.img

Wenn NTFSfix nicht funktioniert, sind wir in Schwierigkeiten. Es gibt jedoch genauere Dienstprogramme , die ausprobiert werden können. Wenn Sie JPEG-Bilddateien wiederherstellen müssen und das Dateisystem nicht fragmentiert war, können Sie dies automatisch tun, indem Sie nach den JPEG-Headern suchen. Das gleiche gilt fast für PDF-, TIFF- und Office-Dokumente, außer dass ich nicht weiß, wie ich sie erkennen soll (für JPEGs würde ich :-)). Als letzte Option habe ich diese Typen gefunden - ich kenne sie nicht, bin nicht mit ihnen verwandt und werde keine Schuld akzeptieren. Allerdings ist der Preis sehr vernünftig.


@ Iserni - Danke für die Info. Obwohl das allererste Problem bei mir ist, dass ich das Bild der Festplatte unter Linux nicht erstellen kann, weil es überhaupt nicht erkannt wird. In Fenstern wird es mindestens erkannt, ist aber nicht zugänglich.
Anurag Rana

Aktualisierung der Antwort
bezüglich

@Isreni - Vielen Dank für die Hilfe. Ich kann ein Image von Daten auf der Festplatte erstellen, die Daten auf meiner Festplatte sind jedoch 400 GB und die maximal verfügbare Größe auf meinem Laptop beträgt 200 GB. daher werde ich kein vollständiges Bild machen können. Es wird in der Mitte abgebrochen. Gibt es eine Möglichkeit, nur 200 GB von 400 GB auf meinen Laptop zu kopieren und dann von diesem 200-GB-Image einige Daten wiederherzustellen?
Anurag Rana

Ja, Sie können ddmit countparameter nur eine bestimmte Anzahl von Gigabyte abrufen (bedenken Sie, dass sich dd- und Festplattenhersteller nicht darüber einig sind, wie groß ein GB ist - "200 GB" für einen bedeuten möglicherweise "190 GB" für den anderen. Bedenken Sie aber auch, dass ein neuer 500- GB-USB-Datenträger etwa 59,99 USD kostet, was sich möglicherweise lohnt. Die Tatsache, dass Sie den Datenträger abbilden können, bedeutet, dass die Hardware höchstwahrscheinlich fehlerfrei ist. Wir suchen nach einer Software Fehlfunktion hier (es sei denn, Sie hatten das blutige Pech einer
Sektorhardwarefehlfunktion

@Isreni - Danke :) Heute habe ich eine Seagate-Wiederherstellungssoftware (kostenlose Version) verwendet, die die Festplatte lesen, alle Ordner (wie sie waren) auflisten und alle Dateien mit weniger als 64 KB (kostenlose Version) wiederherstellen kann. Das heißt, die Festplatte ist sicher frei von Hardwarefehlern. Kann ich nach dem Kopieren von 200 GB Daten auf meinen Laptop mit dd auf diesen Speicherauszug zugreifen, wie wir auf normale Verzeichnisse zugreifen? Nein, richtig, weil der erstellte Speicherauszug eine Datei ist, die mit keiner normalen installierten Anwendung geöffnet werden kann. Wie können wir dann den erforderlichen Ordner / die erforderliche Datei aus diesem Speicherauszug extrahieren / kopieren?
Anurag Rana

-2

Gehen Sie einfach als Administratorrechte zu cmd und geben Sie chkdsk X: / f ein ("X" ist der Datenträgername des Treibers, "/ f" ist fix).


@Iserni Antwort ließ die Antwortstufe zu hoch, sorry, aber ich muss abstimmen
Francisco Tapia

Aus OP: "Sogar chkdsk schlägt jetzt mit dem Fehler fehl:" Das Dateisystem ist NTFS. Volume-Version und -Status können nicht ermittelt werden. chkdsk abgebrochen. ""
Ƭᴇcʜιᴇ007

-3

Eine einfache Lösung, die für mich und meine Kollegen darin bestand, die Festplatte zu mounten und chkdskunter Windows 7 zu verwenden.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.