Einleitung

Neben den systemeigenen Periodic Skripten, die viele regelmäßige Aufgaben erledigen um das System zu pflegen, zu heilen oder zu informieren, kann der Zustand der Festplatten zusätzlich überwacht werden.
Dabei sind drei Aspekte besonders interessant:

  • Erweiterung der Periodic Skripte für regelmäßige S.M.A.R.T.-Berichte
  • Automatische Überwachung von S.M.A.R.T. Werten mit Alarmierung per E-Mail
  • Regelmäßige Tests, um den aktuellen Zustand der Festplatte zu erhalten

NEU: Für ganz ungeduldige habe ich einen Konsole only Abschnitt. Da gibts nur Befehle, keine Erklärungen.

Letzte Aktualisierung:

  • 24.11.2024: Initiales Dokument

Voraussetzungen

Smartmontools

Die Smartmontools sind eine gute und vor allem sehr verbreitete Basis, um der Zustand der Festplatten zu erhalten. Das Paket smartmontools ist nach Anpassung der Paketquelle mit pkg install -y smartmontools schnell installiert. Mit service smartd enable wird der Dienst aktiviert.

Mit sysrc -f /etc/periodic.conf daily_status_smart_devices="YES" wird jeden Tag der Zustand der Festplatten mit in die täglichen Systemberichte aufgenommen. Anschließend erfolgt mit ee /usr/local/etc/smartd.conf (viele weitere Beispiele sind in der /usr/local/etc/smartd.conf.sample aufgeführt) die Anpassung der Konfiguration.

Hier soll folgendes erreicht werden: "Beobachte alle am System erkannten Festplatten auf ihre vitalen Werte, halte die Temperatur im Auge und sende Warnungen per E-Mail falls was klemmt. Jede Woche Sonntag erfolgt eine kurzer und jeden Monatsanfang zusätzlich ein langer Selbsttest."

Auf den ersten Blick ist die Syntax etwas verwirrend, aber ist recht schnell erklärt:

  • -a sind die Default Werte: -H -f -t -l error -l selftest -l selfteststs -C 197 -U 198
  • -n standby soll keine Tests machen wenn die Festplatte schläft
  • -W 4,30,40 überwacht die Temperatur und meldet ab 30°C Schwankungen um 4°Coder wenn die kritischen 40°C überschritten sind
  • -m root ist der E-Mail Empfänger , z.B. root
  • -s plant die Selbsttests:
    • S/../../7/01 = S (short) Test am 7. Tag der Woche
    • | = und
    • L/../01/./00 = L (long) Test am 1. Tag des Monats

In Summe haben wir dann einen Eintrag für alle Geräte:

DEVICESCAN -a -n standby -W 4,30,40 -m root -s (S/../../7/01|L/../01/./00)

Eine Beispiel E-Mail könnte dann so aussehen:

Konsole

Voilá