Externe Festplatte für fehlerhafte Sektoren zur Wiederherstellung / Markierung von Hilfsprogrammen in Linux

34612
quack quixote

Ich habe gerade die neue Version von Ubuntu, Karmic Koala, in meinem Laptop installiert. Alles ist gut, abgesehen von der Tatsache, dass das System ungefähr 300 fehlerhafte Sektoren auf meiner externen 1-TB-Festplatte erkannt hat. Ich würde mich dann gerne erholen oder einfach markieren. Gibt es ein kostenloses Dienstprogramm, das ich unter Linux ausführen kann, um dies zu erreichen?

Aktualisieren:

Die Partition ist in NTFS formatiert.

Danke im Voraus

4

6 Antworten auf die Frage

6
Geoff Fritz

Wenn das Betriebssystem selbst fehlerhafte Sektoren anzeigt, geht die Fahrt bergab. Die Hardware sollte fehlerhafte Sektoren transparent aus dem Dienst entfernen, und es sind möglicherweise keine Ersatzsektoren mehr vorhanden, an die sie neu zugeordnet werden können. Wenn dies der Fall ist, sind Ihre Daten sehr gefährdet.

Ich würde Davids Vorschlag zu Herzen nehmen und Ihre Daten so schnell wie möglich migrieren. Sie können "smartmontools" installieren und smartctl ausführen, um zu sehen, was das Gerät selbst meldet.

Sie können versuchen, das Dienstprogramm "badblocks" auf dem Raw-Gerät zu verwenden, auf dem sich Ihr NTFS-Laufwerk befindet, da es auf dem Gerät funktioniert und nicht vom Dateisystem abhängig ist. Stellen Sie sicher, dass Sie die Handbuchseiten SORGFÄLTIG lesen und den zerstörungsfreien Modus verwenden. Es sollte in der Lage sein, jeden Sektor zu lesen und dann jeden Sektor neu zu schreiben. Dadurch sollte das Laufwerk selbst alle problematischen Sektoren neu zuordnen. Testen Sie dieses Verfahren zuerst auf einem USB-Stick oder einem anderen Medium.

Ich empfehle Ihnen, Badblocks mitzuteilen, eine große Anzahl von Sektoren gleichzeitig zu verarbeiten, da das Scannen von 1-TB-Laufwerken sehr lange dauert.

Wieder ... stellen Sie sicher, dass Sie wissen, was Sie tun. Ein Beleg und Ihre Daten sind Toast.

Wenn die Daten für Sie wertvoll sind und Sie sich nicht auf Ihre Fähigkeiten verlassen können, möchten Sie möglicherweise eine kommerzielle Lösung wie SpinRite verwenden (allerdings ist dies teuer und erfordert eine Windows-Maschine). Beachten Sie, ich habe SpinRite noch nie verwendet, aber ich habe gute Dinge online davon gehört.

Zu Linkzwecken ist diese Antwort möglicherweise für Mac-Benutzer von Interesse, die Blöcke eines Volumes überprüfen möchten, das NTFS verwendet: [Reparieren Sie fehlerhafte Blöcke auf der Mac-Festplatte] (http://superuser.com/q/148227/84988) ) und in Ask Different, [Welche kostenlose oder Open Source-Software kann ich mit Mac-Hardware verwenden, um die Integrität jedes Blocks einer Festplatte zu überprüfen, auf der Core Storage verwendet wird?] (http://apple.stackexchange.com/q/57869/ 8546) Graham Perrin vor 11 Jahren 1
Bei Verwendung von Badblocks mit -n besteht die Möglichkeit, das Laufwerk weiter zu beschädigen, insbesondere wenn viele fehlerhafte Blöcke vorhanden sind, wodurch die Firmware die "Ersatzblöcke" erschöpft. Taryn vor 5 Jahren 0
2
David Spillett

Dies hängt vom verwendeten Dateisystem ab. Wenn Sie ext2, etx3 oder ext4 verwenden (IIRC Ubuntu 9.10 wird bei Neuinstallationen standardmäßig auf ext4 gesetzt, frühere Versionen standardmäßig auf ext3), können Sie ausführen

e2fsck -c -c -k -C 0 /dev/device 

dh

e2fsck -c -c -k -C 0 /dev/sdc1 

für das Dateisystem auf der ersten Partition des Laufwerks sdc. Das Dateisystem sollte nicht gemountet werden, solange dies geschieht. Wenn es für Ihr normal laufendes System benötigt wird, müssen Sie es starten, e2fsckwährend Sie von einer "Live-CD" oder ähnlichem gebootet werden.

Die -cOption ist, was dazu führt, dass der Oberflächenscan zu dem, was der Checker ausführt, hinzugefügt wird. Dann -cwird ein nicht-destruktiver Schreib- -kund -C 0Lesetest durchgeführt. Er wird aufgefordert, eine vorhandene Liste von Badblocks zu speichern, anstatt sie erneut zu testen, und die e2fsck-Ausgabe wird einfach mehr Fortschrittsinformationen während ihrer Arbeit. Siehe man e2fsckfür weitere Einzelheiten.

Die obigen Punkte kennzeichnen die fehlerhaften Blöcke, so dass sie in Zukunft nicht mehr verwendet werden. Sie müssen es erneut ausführen, wenn Sie das Laufwerk oder diese einzelne Partition jemals neu formatieren. Sie sollten es auch gelegentlich wiederholen, falls es "fast schlechte" Sektoren gibt, die sich weiter abbauen. Es gibt keine Möglichkeit, fehlerhafte Sektoren "wiederherzustellen".

Ich empfehle Ihnen jedoch, Ihre Daten auf ein anderes Laufwerk zu migrieren, es sei denn, dort ist nichts wirklich Wichtiges (dh es würde Sie nicht allzu sehr stören, wenn das Laufwerk plötzlich sehr viel schlechter wird und die Daten praktisch unlesbar oder beschädigt sind). Wenn Sie das Laufwerk nicht austauschen, vergewissern Sie sich, dass Sie für alle Dinge, die Ihnen wichtig sind, gute Backups zur Verfügung haben (obwohl Sie ohnehin ein gutes Backup-Regime haben sollten).

Danke, aber ich verwende das NTFS-Dateisystem auf meiner externen Festplatte. Trifft dieser Befehl auch auf diese Situation zu? vor 14 Jahren 1
Meines Wissens gibt es kein Standard-Linux-Kommando / Utility zur Überprüfung / Reparatur von NTFS-Volumes mit oder ohne Oberflächenscan. Sie müssen es von einem Windows-Computer aus versuchen. David Spillett vor 14 Jahren 0
2
Kokizzu
fsck.ext4 -cDfty -C 0 /dev/sdxx 

source: http://www.commandlinefu.com/commands/view/8474/run-a-ext4-file-system-check-and-badblocks-scan-with-progress-info

0

Nicht sicher, ob NTFS-bezogen ist:

Fehlerhaftes Block HOWTO für Smartmontools

Während dies die Frage theoretisch beantworten kann, ist es [bevorzugt] (http://meta.stackexchange.com/q/8259), die wesentlichen Teile der Antwort hier aufzunehmen und den Link als Referenz bereitzustellen. Tom Wijsman vor 11 Jahren 0
0
RAJ
# ntfsresize -i /dev/sdb3  Device name : /dev/sdb3 NTFS volume version: 3.1 Cluster size : 4096 bytes Current volume size: 287967052288 bytes (287968 MB) Current device size: 287967052800 bytes (287968 MB) Checking filesystem consistency ... 100.00 percent completed Accounting clusters ... Space in use : 178645 MB (62.0%) Collecting resizing constraints ... You might resize at 178644316160 bytes or 178645 MB (freeing 109323 MB). Please make a test run using both the -n and -s options before real resizing!  # ntfsresize -ns /dev/sdb3  Non-destructive resize  # ntfsresize -s /dev/sdb3  Real resize! careful... 
Es wäre wahrscheinlich nützlich, dem von Ihnen geposteten Codeblock einen kleinen Kontext zu geben. Diejenigen, die wissen, werden sicher wissen, dass sie keine Probleme haben. Wenn Ihre Antwort aber auch für andere nützlich sein soll, sollten Sie hier beschreiben, was die Befehle tatsächlich tun. JoshP vor 11 Jahren 1
0
Taryn

Wenn Sie hoffen, dass die Daten auf dieser externen Partition erhalten bleiben, möchten Sie nie wieder auf dieses Laufwerk schreiben, was einige dieser Antworten vorschlagen. Verwenden Sie stattdessen ein forensisches Wiederherstellungstool, um ein Image des Laufwerks zu erstellen. ddrescue ist mein Lieblingswerkzeug für solche Arbeit.

Hier sind meine "Notizen für sich selbst", die Mac-spezifisch sind, aber die Hauptpunkte abdecken: Identifizieren der Hardware- / Dev-Mount-Namen von Quelle und Ziel, Aufheben der Bereitstellung, anschließendes Kehren der Quelle auf das Ziel, Deaktivieren der Lese- Wiederholungsversuche und Protokollieren Fehler, aber übersprungen die fehlerhaften Blöcke für den letzten.

Forensische Imaging von Festplatten und / oder Rettung ausfallender Festplatten: Gnu ddrescue (nicht dasselbe wie dd_rescue, obwohl ähnlich) Alle müssen als root ausgeführt werden.
Bestätigen Sie zunächst, dass das Gerät
gemountet ist : diskutil list
Hängen Sie die Quelle (z. B. disk1) (und das Ziel beim Senden an eine physische Partition anstelle einer Roh-Image-Datei) ab:
diskutil unmount disk1 Machen
Sie eine blockweise Image-Kopie von disk1 auf eine mountable Disk-Image-Datei, die ein Protokoll erstellt und sich zunächst auf die lesbaren Teile konzentriert:
ddrescue -v / dev / disk1 myrescueddisk.dmg rescue.log