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üfroutinensmartd
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.