smartmontools einrichten

Was ist S.M.A.R.T?

S.M.A.R.T (bzw. im Folgenden SMART) ist ein Protokoll zur Überwachung und Überprüfung von Festplatten auf Ebene der Hardware. SMART wird seit vielen Jahren von praktisch allen Herstellern unterstützt, sodass sich kaum noch Festplatten ohne SMART-Unterstützung im Umlauf befinden. Insbesondere wird SMART eingesetzt bei

  • Klassischen Spindel-Festplatten
  • SSD-Festplatten
  • USB-Festplatten (welche wiederum Spindel-Festplatten oder SSDs enthalten)

SMART adressiert drei Aspekte:

  • Hardwareseitige Festplattenüberprüfung: Die Hersteller implementieren auf der Festplatte mehrere Prüfroutinen. Diese können mit SMART gestartet werden. Anschließend prüft sich die Festplatte selbst. Hierbei ist zu beachten, dass das Dateisystem nicht geprüft werden kann, denn die Struktur des Dateisystems ist der Festplatte (bzw deren Hardware/Firmware) nicht bekannt.
  • SOLL: Der Hersteller hinterlegt auf der Festplatte eine Spezifikation. Bei Überschreiten der entsprechenden Schwellwerte (oder Bereiche) der Spezifikation geht der Hersteller von einer erhöhten Gefahr eines Festplattenausfalles aus. Insbesondere werden hinterlegt:
    • Ein Temperaturbereich innerhalb dessen die Festplatte betrieben werden soll.
    • Die Anzahl der fehlerhaften Speicherblöcke, die bei Überschreiten eines Schwellwertes Gefahr signalisieren.
  • IST: Der Hersteller protokolliert tatsächliche Umgebungsparameter, insbesondere
    • die tatsächliche Betriebstemperatur.
    • die Anzahl der fehlerhaften Speicherblöcke, die auf der Festplatte bereits durch Reserveblöcke ausgetauscht wurden.
    • die Betriebsstunden der Festplatte.

Mittels einer Software kann ein Benutzer nun die SOLL-Parameter (Spezifikation) der Festplatte auslesen und mit den IST-Werten vergleichen. Liegen die IST-Werte außerhalb der Spezifikation, dann ist die Festplatte defekt oder ausfallgefährdet (aus Perspektive des Herstellers). Eine solche Software ist smartmontools. Smartmontools bildet alle drei Aspekte ab, also auch die Ausführung der Prüfroutinen. Die Ausgaben von smartctl, welches in smartmontools enthalten ist, erlauben eine Festplattenüberwachung mittels einer Monitoring-Software.

Besonderheiten gibt es bei Festplattenverbünden (RAID):

  • Bei einem reinen Software-Raid "sieht" das Betriebssystem die Festplatten und kann sie einzeln ansprechen (z. B. md-Raid oder BTRFS-Raid).
  • Bei einem echten Hardware-Raid "sieht" nur der Raid-Controller die Festplatten und emuliert eine Festplatte, welche das Betriebssystem dann sieht. Das Betriebssystem kann einzelne Festplatten dann nicht mehr ansteuern und auch SMART wird nicht unverfälscht auf der eigentlichen Hardware ausgeführt. Bestenfalls bildet der RAID-Controller wiederum SMART in irgendeiner Form ab, die wenigstens Probleme meldet.

Bezüglich einer Festplattenüberwachung pro Festplatte ist ein Software-Raid insofern deutlich besser handhabbar. Insbesondere, wenn ein billiger Raid-Controller letztlich mit obskuren Software-Treibern abgebildet wird, könnte man gleich für ein Software-Raid optieren.

smartmontools einrichten

Smartmontools enthält zwei Programme:

  • smartctl zur Ausgabe der Spezifikation (SOLL) und der Messwerte (IST), sowie zur Ausführung der Prüfroutinen
  • smartd Dienst zur laufenden Festplattenüberwachung

Zur laufenden SMART-Überwachung aller Festplatten mit smartd ist Folgendes zu tun:

Installation:

sudo apt-get install smartmontools
sudo vim /etc/default/smartmontools

Eintrag editieren und Dienst neu starten:

start_smartd=yes

sudo service smartmontools start

Bei Fehlern schickt smartd eine E-Mail an den Systembenutzer root.

smartd Mailversand einrichten und überprüfen

Standardmäßig verschickt smartd E-Mails an den Systembenutzer root. Man kann jedoch in der Datei /etc/smartd.conf auch einen anderen Systembenutzer oder eine E-Mail-Adresse hinterlegen mit der Option -m user@example.com

Zum Test des Mailversands kann man die Datei smartd.conf mittels der Option -M test so konfigurieren, dass beim Start von smartd eine Testmail für jede Festplatte verschickt wird, welche überwacht wird:

sudo vim /etc/smartd.conf

Hier die Zeile

DEVICESCAN -d removable -n standby -m root -M exec /usr/share/smartmontools/smartd-runner

ändern in

DEVICESCAN -d removable -n standby -M test -m root -M exec /usr/share/smartmontools/smartd-runner

sudo service smartmontools restart

root sollte jetzt eine Testnachricht erhalten.

sudo vim /etc/smartd.conf

Die Option -M test kann nun wieder entfernt werden. Danach smartd neu starten mit:

sudo service smartmontools restart

Der Mailversand setzt voraus, dass ein funktionierender Mail Transfer Agent (MTA) installiert ist.