Einzelnen Beitrag anzeigen
Alt 01.11.2005, 13:22   #1 (permalink)
kerri
Die Kerrimaus
 
Benutzerbild von kerri
 

Registriert seit: 17.11.2003
Beiträge: 2.987

kerri kann auf vieles stolz seinkerri kann auf vieles stolz seinkerri kann auf vieles stolz seinkerri kann auf vieles stolz seinkerri kann auf vieles stolz seinkerri kann auf vieles stolz seinkerri kann auf vieles stolz seinkerri kann auf vieles stolz seinkerri kann auf vieles stolz sein

Standard Eine Einfuehrung in SMART (und die smartmontools unter Linux)

In diesem Tutorial geht es allgemein um SMART, speziell um die smartmontools unter Linux. Fuer alle Nicht-Linuxer lohnt es sich vielleicht trotzdem, es zu ueberfliegen, denn einige der hier erklaerten Ausgaben finden sich auch bei Windows Programmen wieder.

Inhalt:
1. Was ist SMART?
2. Smartmontools
2.1. Woher nehmen, wenn nicht stehlen?
2.2. Auslesen von Daten
2.3. Was fuer eine Platte ist es ueberhaupt und kann diese SMART?
2.4 SMART aktivieren
2.5 Wie gehts der Platte?
2.6. Aktive Tests
2.7. Wie sehen Fehler aus



1. Was ist SMART?

SMART (Self-Monitoring, Analysis and Reporting Technology) dient zum Ueberwachen von Festplatten ((S)ATA- und SCSI-Festplatten und SCSI-Bandlaufwerke) und zur Vorhersage eventueller Fehlfunktionen.
Dabei koennen sowohl Zustandsdaten ausgelesen, als auch verschiedene Selbst-Tests der Festplatten durchgefuehrt werden. Eigenschaften, die von SMART ueberwacht werden sind zum einen mechanischer Natur, wie z.B. die Zeit, die die Platte braucht, um auf volle Drehzahl zu kommen, zum anderen elektronischer Natur, wie die Haeufigkeit von Uebertragungs- oder Lesefehlern. Weiterhin werden Umgebungsbedingungen wie die Beriebstemperatur ueberwacht.


2. Smartmontools

2.1. Woher nehmen, wenn nicht stehlen?

Bei den grossen Linux-Distributionen sollten die smartmontools als Paket enthalten sein und sich mit dem jeweiligen Paketmanager installieren lassen.
Findet sich das smartmontool-Paket nicht mit in der Distribution, oder wird die aktuellste Version benoetigt, hilft ein Blick auf (1).

2.2. Auslesen von Daten

Als Beispiel verwende ich eine IBM 'Deskstar' Platte der Modellnummer 'IC35L060AVVA07-0', die als Device hdb an mein System angebunden ist.

2.3. Was fuer eine Platte ist es ueberhaupt und kann diese SMART?

Eine Antwort auf diese Frage liefert smartctl -i /dev/hdb

Code:
 # smartctl -i /dev/hdb
smartctl version 5.1-18 Copyright (C) 2002-3 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
                                                                                
=== START OF INFORMATION SECTION ===
Device Model:     IC35L060AVVA07-0
Serial Number:    VNC302A3L4BTZA
Firmware Version: VA3OA52A
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   5
ATA Standard is:  ATA/ATAPI-5 T13 1321D revision 1
Local Time is:    Wed Sep 15 17:18:24 2004 CEST
SMART support is: Available - device has SMART capability.
SMART support is: Disabled
                                                                                
SMART Disabled. Use option -s with argument 'on' to enable it.
Es handelt sich also offenbar um eine Platte des Modells IC35L060AVVA07-0, die
SMART Faehigkeiten hat - SMART support is: Available.

2.4 SMART aktivieren

Wie vorgeschlagen aktiviert man mit smartctl -s on /dev/hdb SMART fuer diese Platte:

Code:
 # smartctl -s on /dev/hdb
smartctl version 5.1-18 Copyright (C) 2002-3 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
                                                                                
=== START OF ENABLE/DISABLE COMMANDS SECTION ===
SMART Enabled.
2.5 Wie gehts der Platte?

smartctl -H /dev/hdb liefert den Gesundheitszustand (Health):

Code:
 # smartctl -H /dev/hdb
smartctl version 5.1-18 Copyright (C) 2002-3 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
 
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
Gehts auch noch genauer? Sicher, smartctl -A /dev/hdb (Attributes) liefert ausfuehrliche Informationen zum Gesundheitszustand:

Code:
 # smartctl -A /dev/hdb
smartctl version 5.1-18 Copyright (C) 2002-3 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
 
=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000b   100   100   060    Pre-fail  Always       -       0
  2 Throughput_Performance  0x0005   100   100   050    Pre-fail  Offline      -       0
  3 Spin_Up_Time            0x0007   105   105   024    Pre-fail  Always       -       257 (Average 263)
  4 Start_Stop_Count        0x0012   100   100   000    Old_age   Always       -       858
  5 Reallocated_Sector_Ct   0x0033   100   100   005    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000b   100   100   067    Pre-fail  Always       -       0
  8 Seek_Time_Performance   0x0005   100   100   020    Pre-fail  Offline      -       0
  9 Power_On_Hours          0x0012   100   100   000    Old_age   Always       -       5161
 10 Spin_Retry_Count        0x0013   100   100   060    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       695
192 Power-Off_Retract_Count 0x0032   100   100   050    Old_age   Always       -       987
193 Load_Cycle_Count        0x0012   100   100   050    Old_age   Always       -       987
194 Temperature_Celsius     0x0002   196   148   000    Old_age   Always       -       28 (Lifetime Min/Max 17/54)
196 Reallocated_Event_Count 0x0032   100   100   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0022   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0008   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x000a   200   200   000    Old_age   Always       -       0
Die Eigenschaften sind dabei standardmaessig von 1 bis 253 durchnummeriert (Spalte 'ID#'), welche dieser Eigenschaften tatsaechlich durch die Festplatte unterstuetzt werden, ist Sache des Herstellers. Die Spalte 'ATTRIBUTE_NAME' gibt den Namen der Eigenschaft an. Unter (2) ist eine vollsteaendige Liste mit Beschreibungen aller Eigenschaften zu finden. Es werden 2 Typen von Eigenschaften unterschieden, zum einen diejenigen, die sich ganz normal mit dem Alter der Platte verschlechtern, unter 'TYPE' mit 'Old_age' bezeichnet, zum anderen diejenigen, die einen unmittelbar bevorstehenden Ausfall ankuendigen, 'Pre-fail'.
'RAW_VALUE' gibt die aktuell ausgelesenen Rohdaten an, die in der Spalte 'VALUE' auf 100 oder 253 normiert werden. Die Normierung ist herstellerspezifisch und wird nicht von smartctl errechnet, sondern von der Festplatte selbst. Dabei gilt allgemein: je kleiner der Wert, desto schlechter. 'WORST' den schlechtesten bisher gemessenen Wert von 'VALUE' an. 'THRESH' ist der vom Hersteller gesetzte Schwellenwert, ab dem Versagen droht oder einsetzt. Liegt 'VALUE' unter 'THRESH', erscheint in der Spalte 'WHEN_FAILED' bei der entsprechenden Eigenschaft ein 'FAILED NOW!' - hoechste Zeit, die Daten, die sich auf der Platte befinden, zu sichern! Verbessert sich der Wert jedoch wieder (Beispiel: eine kurzzeitig zu hohe Temperatur), steht in der Spalte 'WHEN_FAILED' 'In the past'.
Die Spalte 'UPDATED' gibt an, wann und wie die Daten aktualisiert werden. 'Always' heisst, die Daten werden im normalen Betrieb auf dem laufenden gehalten, 'Offline' Werte werden nur bei sogenannten Offline-tests aktualisiert. Dazu spaeter mehr.


Besonderes Augenmerk verdienen folgende Eigenschaften:
  • 'Temperature_Celsius' - Die Rohdaten entsprechen dabei meist der tatsaechlichen Temperatur in Grad Celsius. Die IBM Platte gibt netterweise auch noch den insgesamt maximal und minimal gemessenen Wert an, Platten anderer Hersteller tun dies leider haeufig nicht.
  • 'Power_Cycle_Count' - Die Rohdaten geben an, wie oft die Platte insgesamt hochgefahren wurde.
  • 'Power_On_Hours' - Wie lange war die Platte insgesamt in Betrieb. Im obigen Beispiel sind es tatsaechlich 5161 Stunden, einige Hersteller geben diesen Wert auch in Minuten oder sogar halben Minuten (z.B. Samsung) an. Hiermit laest sich leicht nachpruefen, ob die ueber Ebay gekaufte 'neue und unbenutzte Platte' tatsaechlich 'neu und unbenutzt' ist
  • 'Reallocated_Sector_Ct' - Die Rohdaten geben an, wieviele Sektoren defekt sind und durch die Reservesektoren ersetzt wurden.


.... gleich gehts weiter.....

Geändert von kerri (11.06.2006 um 23:50 Uhr)
kerri ist offline   Mit Zitat antworten
3 Benutzer bedanken sich für den Beitrag:
dr_Cox (17.07.2008), redilS (27.06.2007), tele (15.06.2007)