Festplatten halten nicht ewig. Jede Festplatte wird irgendwann einmal ausfallen, was im schlimmsten Fall den Totalverlust sämtlicher darauf enthaltener Daten bedeutet.
DAS BEDEUTET: Die Frage ist nicht, ob Ihre Festplatte jetzt im Moment noch einwandfrei funktioniert. Die Frage ist, was Sie tun werden, wenn Ihre Festplatte sich für immer verabschiedet (und die Chancen dafür sind relativ hoch).
Haben Sie ein Backup Ihrer persönlichen Daten, wie z.B. Fotos, Schriftverkehr, Source Code, sonstige Arbeitsergebnisse? Befindet sich das Backup auf CD-ROM, DVD oder einer externen Festplatte?
Wenn nicht, fertigen Sie noch heute ein Backup an. Bewahren Sie das Backup in einem anderen Raum auf; möglichst in einem anderen Gebäude. Kaufen Sie sich eine ausreichend große externe Festplatte, die ausschließlich für Backup-Zwecke reserviert ist.
Die häufigste Fehlerursache scheint mir ein Schreib-/Lesefehler eines Sektors oder mehrerer aufeinanderfolgender Sektoren zu sein. Mechanische Probleme, wie etwa dass sich der Schreib-/Lesekopf nicht mehr bewegt, oder dass die Platte überhaupt nicht mehr anläuft, sind dagegen eher selten.
Diese Schreib-/Lesefehler bleiben oft unbemerkt. Bei den heutigen Plattenkapazitäten ist es gut möglich, dass der defekte Sektor in einer selten genutzten Datei zu liegen kommt. Erst wenn man wieder auf die Datei zugreifen will, erfährt man von dem Problem. Leider verschlimmern sich solche Probleme aber im Laufe der Zeit. Erst ist es nur ein Sektor, dann mehrere. Irgendwann ist ein Sektor in der Directorystruktur betroffen, dann kann es passieren, dass man ganze Verzeichnisse verliert, weil das Betriebssystem die Verzeichnisse nicht mehr wiederfindet (obwohl die Dateien selbst noch intakt sind).
Deswegen sollte man seine Festplatten in gewissen Abständen überprüfen. Der einfachste Weg ist, den in jede moderne Festblatte eingebauten SMART (Self-Monitoring Analysis and Reporting Technology) Selbsttest auszuführen, oder wenigstens die SMART Statusinformationen abzufragen. Unter Linux wurden hierzu die "S.M.A.R.T. Monitoring Tools", die es übrigens auch in einer Windows Version gibt.
In USB- oder FireWire Platten kann man leider nicht auf die SMART Statusinformationen zugreifen. Die entsprechenden Befehle werden nicht durch den USB- bzw. FireWire-Controller weitergereicht. Man kann höchstens die Festplatte aus dem Gehäuse ausbauen und direkt an einen PC anschließen.
S.M.A.R.T. Monitoring Tools installieren
Die S.M.A.R.T. Monitoring Tools stehen in einer Windows- und Linux-Version zur Verfügung. Für die Windows-Version gibt es einen Installer, die Linux-Version ist in praktisch jeder Distribution enthalten und kann z.B. unter Debian (auch Ubuntu oder Knoppix) mit
apt-get install smartmontools
installiert werden. Die SmartMonTools Homepage enthält zahlreiche weitere nützliche Informationen zum Thema.
Wie man auf einem Linux Server die S.M.A.R.T. Monitoring Tools so installiert, dass der Zustand der Platten periodisch überwacht wird und der Administrator eine Email bei Problemen bekommt, ist im Artikel "Festplatten mit SMART überwachen" beschrieben.
Die wichtigsten smartctl Kommandos
smartctl wird von der Linux-Konsole bzw. dem Windows DOS Fenster wie fogt aufgerufen:
# IDE Platte:
smartctl -a /dev/hda
# SATA Platte
smartctl -d ata -a /dev/sda
# unter Windows:
smartctl -a hda
Hier eine Liste der wichtigsten Optionen. Für weitere Informationen siehe die smartctl man page oder SmartMonTools Homepage.
Option
Beschreibung
Weitere Informationen
-h, --help
Help
Online Hilfe
-s on, --smart=on
SMART aktivieren/deaktivieren
SMART Funktionen aktivieren, sonst funktionieren die weiteren Kommandos nicht.
-d ata, --device=ata
device type
Unter Linux werden SATA Platten wie SCSI Platten angesprochen. Falls smartctl die Platte nicht auf Anhieb erkennt, explizit den Typ angeben (ata, scsi, 3ware, N)
-t short, --test=short
Run Test
Kurzen (1 - 2 Minuten) Selbsttest ausführen.
-t long, --test=long
Run Test
Langen (1 - 2 Stunden) Selbsttest ausführen.
Beide Tests können bedenkenlos während des laufenden Betriebs ausgeführt werden, es gehen keine Daten verloren.
Weitere mögliche Testtypen (nicht von allen Disks unterstützt):
offline
conveyance
select,M-N
pending,N
afterselect,on
afterselect,off
-C, --captive
Do test in captive mode
Zusatzoption für -t: alle Zugriffe auf die Festplatte werden für die Dauer des laufenden Tests gesperrt.
-a, --all
Alle SMART Informationen
Führt alle folgenden Statusabfragen auf einmal aus.
-i, --info
Informationen über die Festplatte
=== START OF INFORMATION SECTION ===
Model Family: SAMSUNG SpinPoint P120 series
Device Model: SAMSUNG SP2504C
Serial Number: xxxxxxxxxxxxxx
Firmware Version: VT100-41
User Capacity: 250.059.350.016 bytes
Device is: In smartctl database [for details use: -P show]
ATA Version is: 7
ATA Standard is: ATA/ATAPI-7 T13 1532D revision 4a
Local Time is: Sun Sep 09 11:50:06 2007 WN
SMART support is: Available - device has SMART capability.
Enabled status cached by OS, trying SMART RETURN STATUS cmd.
SMART support is: Enabled
Einige allgemeine Festplatteninformationen. Nützlich ist die Seriennummer, die man immer braucht, wenn man die Platte zum Hersteller schickt.
-H, --health
Health Status
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
Der Health Status zeigt an, ob der Self-Test der Festplatte erfolgreich war oder fehlgeschlagen ist. Aber Achtung: Auch wenn hier "PASSED" steht, heißt das nicht unbedingt, dass die Festplatte einwandfrei ist. Sie kann durchaus nicht mehr lesbare Sektoren enthalten - wie dieses Exemplar hier. Falls der Self-Test "FAILED!" ergibt, dann sollte man schleunigst alle Daten retten und die Platte austauschen.
-c, --capabilities
device SMART capabilities
General SMART Values:
Offline data collection status: (0x02) Offline data collection activity
was completed without error.
Auto Offline Data Collection: Disabled.
Self-test execution status: ( 121) The previous self-test completed having
the read element of the test failed.
Total time to complete Offline
data collection: (4960) seconds.
Offline data collection
capabilities: (0x5b) SMART execute Offline immediate.
Auto Offline data collection on/off support.
Suspend Offline collection upon new
command.
Offline surface scan supported.
Self-test supported.
No Conveyance Self-test supported.
Selective Self-test supported.
SMART capabilities: (0x0003) Saves SMART data before entering
power-saving mode.
Supports SMART auto save timer.
Error logging capability: (0x01) Error logging supported.
General Purpose Logging supported.
Short self-test routine
recommended polling time: ( 1) minutes.
Extended self-test routine
recommended polling time: ( 82) minutes.
Diverse Angaben über die SMART Funktionen dieser Festplatte. Enthält auch die ungefähre Dauer der Selbsttests.
-A, --attributes
device SMART vendor-specific Attributes and values
Diese Tabelle enthält zahlreiche wichtige Informationen zum aktuellen Zustand der Platte. Weiter unten im Text dazu mehr.
-l error, --log=error
device log
Error 3745 occurred at disk power-on lifetime: 3067 hours (127 days + 19 hours)
When the command that caused the error occurred, the device was in an unknown state.
After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
04 51 05 01 aa 00 a0 Error: ABRT
Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
a1 00 05 01 aa 00 a0 00 00:03:27.792 IDENTIFY PACKET DEVICE
Dies kann auf eine beschädigte Festplatte hinweisen, muss aber nicht. Solche Fehler können auch durch Probleme mit der Stromversorgung, Stöße während des Schreib-/Lesevorgangs (z.B. bei Notebooks) verursacht werden. Vorsichtshalber sollte man jedoch einen Selbsttest starten.
-l selftest, --log=selftest
device log
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Extended offline Completed: read failure 90% 2891 6344628
# 2 Short offline Completed: read failure 90% 2891 6344628
Jede SMART Festplatte kann Selbsttests ausführen. Dieser Abschnitt enthält die Ergebnisse der letzten Tests. In diesem Beispiel sind sowohl der kurze als auch der lange Selbsttest fehlgeschlagen. Die Festplatte ist defekt und ein Garantiefall. Zusätzlich wird noch der Zeitpunkt des Tests angegeben sowie die logische Blockadresse des fehlerhaften Blocks.
Wenn der Selbsttest ohne Befund durchgelaufen ist, steht hier "Completed without error".
-l selective, --log=selective
device log
SMART Selective Self-Test Log Data Structure Revision Number (0) should be 1
SMART Selective self-test log data structure revision number 0
Warning: ATA Specification requires selective self-test log data structure revision number = 1
SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS
1 0 0 Not_testing
2 0 0 Not_testing
3 0 0 Not_testing
4 0 0 Not_testing
5 0 0 Not_testing
Selective self-test flags (0x0):
After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.
Falls man nur bestimmte Bereiche der Platte getestet hat, stehen hier die entsprechenden Resultate.
Wichtige SMART Attribute
Man sollte sich zunächst die folgenden Einträge ansehen:
SMART Information
Bedeutung
SMART overall-health self-assessment test result
Kann "PASSED" oder "FAILED!" enthalten. Ein PASSED Ergebnis heißt jedoch keineswegs, dass die Festplatte in Ordnung ist.
Reallocated_Sector_Ct
Reallocated_Event_Count
Die Anzahl der Sektoren mit Lesefehlern, die automatisch von der Festplatten-Controllersoftware durch Reserve-Sektoren ersetzt wurden. Sollte normalerweise Null sein. Wenn die Anzahl defekter Blöcke im Laufe der Zeit ansteigt, sollte man die Platte ersetzen.
Current_Pending_Sector
Die Anzahl Sektoren mit Lesefehlern, die noch nicht ersetzt wurden. Wenn dieser Wert nicht Null ist, muss die Platte neu formatiert werden.
SMART Error Log
Dieser Abschnitt enthält Detailinformationen zu den letzten aufgetretenen Problemen. Einträge sind kein Beweis für ein schwerwiegendes Problem mit der Festplatte; wenn jedoch der Error Counter sehr hoch ist, ist die Platte wahrscheinlich defekt.
SMART Self-test log
Enthält die Ergebnisse der letzten Selbsttest. Falls hier ein "FAILED" steht, ist die Platte defekt. Daten sichern und Festplatte an den Hersteller zurücksenden.
Reallocated_Sector_Ct, Reallocated_Event_Count
Es ist durchaus normal, dass eine Festplatte defekte Sektoren hat. Die Steuersoftware der Festplatte kann Zugriffe auf solche defekten Sektoren auf einwandfreie Reservesektoren umlenken, so dass keinerlei Einschränkungen im Betrieb auftreten.
Aber man sollte folgende zwei Punkte im Auge behalten:
Wenn die Anzahl defekter Sektoren im Laufe der Zeit ansteigt, dann verschlimmert sich das Problem offensichtlich. Irgendwann sind alle Reservesektoren allokiert; spätestens zu diesem Zeitpunkt ist die Platte unbrauchbar.
Jeder defekte Sektor enthielt möglicherweise Daten, die nun nicht mehr verfügbar sind. Gehört der Sektor zu einer Datei, sind Teile der Datei nicht mehr lesbar. Handelt es sich um einen Block des Directorys (Verzeichnisstruktur), sind unter Umständen ganze Dateien, Verzeichnisse oder womöglich die gesamte Festplatte nicht mehr lesbar, obwohl die Dateien an sich noch vorhanden sind.
Current_Pending_Sector
Dies ist die Anzahl defekter Blöcke, die definitiv nicht mehr lesbar sind und für die die Controllersoftware ein Reassign geplant hat. Die Zuweisung eines Reserveblocks erfolgt jedoch nur bei einem Schreibvorgang.
SMART Selbsttest ausführen
Es gibt zwei Arten von Selbsttests, einen langen und einen kurzen (smartctl -t long und smartctl -t short). Beide Varianten kann man ohne Probleme auf aktiven Festplatten ausführen, da sie weder Daten überschreiben noch den Betrieb nennenswert stören. Der kurze Selbsttest benötigt im allgemeinen ein, zwei Minuten; der lange Selbsttest kann schon mal einige Stunden dauern.
Beide Tests sollte man in gewissen Abständen ausführen. In den Linux smartmontools gibt es dazu den smartd, der z.B. täglich einen kurzen und wöchentlich einen langen Selbsttest ausführt. Sollte es Probleme geben, erhält man automatisch eine Email.
Unter Windows gibt es zahlreiche Tools, die ähnliche Funktionen durchführen:
Die meisten Festplatten haben eine ziemlich lange Garantiezeit, im allgemeinen drei oder fünf Jahre. Wenn der SMART Selbsttest einen Fehler nachweist, ist die Platte ein Garantiefall. Daten retten, Platte an den Hersteller zurückschicken.
Auch bei sonstigen Fehlern, die keinen Garantieanspruch bedingen, sollte man nicht lange herumexperimentieren. Es lohnt sich nicht. Meine Zeit ist mir dafür zu schade. Zeigt eine Platte irgendwelche Unregelmäßigkeiten, gibt es für mich nur einen Weg: Daten runterkopieren, neue Platte einbauen. Und die defekte alte Platte bitte nicht bei Ebay vertickern... lieber in den Elektronikschrott.
Defekte Festplatte reparieren
Bei Lesefehlern kann man die Festplatte zwingen, einen der Reserveblöcke zuzuweisen, indem man Daten auf diesen Sektor schreibt. Die Datei, zu der dieser Sektor gehört, ist allerdings beschädigt.
Unter Windows führt man eine Datenträgerprüfung durch: Rechtsklick auf das fragliche Volume, Eigenschaften, Extras, Fehlerüberprüfung, Jetzt prüfen, Option "Fehlerhafte Sektoren suchen/wiederherstellen" auswählen. Dies liest jeden einzelnen Block der Festplatte und schreibt ihn wieder zurück. Dieser Vorgang kann jedoch eine ganze Weile dauern.
Die Reallokierung wird auch durch eine Neuformatierung erzwungen. Unter Windows: nicht die Option "Schnellformatierung" auswählen; unter Linux: mke2fs -c -c.
Datenrettung
Die beste Methode ist, ein aktuelles Backup zu haben.
Das grundsätzliche Problem beim Kopieren von Daten von einer defekten Festplatte ist, dass irgendwo ja nicht lesbare Blöcke sind. Windows bricht dann gerne mit einem Lesefehler ab, so dass man an die weiteren Daten nicht mehr rankommt. Man kann natürlich etappenweise einzelne Directories kopieren, aber der Aufwand ist sehr viel höher.
Deswegen sollte man zunächst Sektor für Sektor die gesamte Festplatte kopieren. Dann kann man in aller Ruhe die Dateien kopieren, ohne befürchten zu müssen, dass durch Reparaturversuche noch mehr kaputtgeht.
Am besten funktioniert dies unter Linux; auch dann, wenn es sich um Windows Partitionen handelt.
Bookmarks
Ist die Seite nützlich? Dann bitte weiterempfehlen!
Kommentar hinzufügen