Festplattenzustandsüberwachung mit smartctl und smartd | INTROSERV
EUR
european

EUR

usa

USD

German De
Ex. VAT Ex. VAT 0%

Festplattenzustandsüberwachung mit smartctl und smartd

Einführung

smartctl ist ein Konsolenprogramm aus dem smartmontools-Paket, das für die Arbeit mit der S.M.A.R.T. (Self-Monitoring, Analysis and Reporting Technology) Technologie entwickelt wurde, die in modernen Speichermedien implementiert ist.

Anwendungsfälle:

  • Server von Hosting-Unternehmen;
  • VPS/VDS-Knoten;
  • dedizierte Server;
  • Dateiserver;
  • Backup-Systeme;
  • Unternehmensinfrastrukturen.

Welche Aufgaben es löst:

  • frühe Erkennung von Festplattenverschlechterung;
  • Vorhersage von Laufwerksausfällen;
  • Reduzierung des Datenverlust-Risikos;
  • Automatisierung der Überwachung der Gesundheit von HDD, SSD, NVMe;
  • Analyse physischer Probleme im Festplattensubsystem.

Info

Proaktives SMART-Monitoring ermöglicht es, ein Problem zu identifizieren, bevor ein tatsächlicher Festplattenausfall auftritt, was für Produktionsumgebungen von entscheidender Bedeutung ist.

Anforderungen und Voraussetzungen

Unterstützte Betriebssysteme und Versionen:

Linux:

  • Debian 10+
  • Ubuntu 18.04+
  • RHEL / AlmaLinux / Rocky Linux 8+
  • CentOS 7 (unterstützt, aber veraltet)
  • FreeBSD 12+

Windows (über smartmontools, eingeschränkte Nutzung)

Die untenstehenden Beispiele sind für Linux bereitgestellt.

Erforderliche Software und Pakete:

  • smartmontools-Paket
  • Zugriff auf /dev/sdX, /dev/nvmeX
  • installiertes systemd (für smartd)

Zugriffsrechte:

  • Root-Rechte erforderlich
  • oder Zugriff über sudo

Vorläufige Überprüfungen

Anzeigen der Liste der Festplatten im System:

lsblk -d -o NAME,MODEL

Überblick und grundlegende Konzepte

Schlüsselbegriffe

  • SMART – integriertes Festplattenselbstdiagnosesystem
  • Attribute – Zustandsattribute (Reallocated_Sector_Ct, Pending_Sectors, etc.)
  • Selbsttest – integrierte Laufwerkstests
  • smartctl – CLI-Dienstprogramm für SMART-Verwaltung
  • smartd – automatischer Überwachungsdienst

Wie es funktioniert

  1. Die Festplatte sammelt eigenständig Statistiken
  2. smartctl liest diese Daten
  3. smartd analysiert Schwellenwerte und Ereignisse
  4. Benachrichtigungen werden bei Problemen gesendet

Ablauflogik

Festplatte > SMART-Attribute > smartctl > smartd > Protokoll / E-Mail / Überwachung

Grundlegende Einrichtung und Nutzung von smartctl

Installation des smartmontools-Dienstprogramms

Die Arbeit mit SMART ist ohne das installierte smartmontools-Paket, das die smartctl-Dienstprogramme (manuelle Arbeit mit Festplatten) und smartd (Hintergrundüberwachungsdienst) enthält, nicht möglich.

Die Installation erfolgt mit den Standard-Paketmanager-Tools der Distribution.

Debian / Ubuntu

sudo apt update

sudo apt install smartmontools

RHEL / AlmaLinux / Rocky Linux

sudo dnf install smartmontools

Nach der Installation sind die Dienstprogramme im System verfügbar und ohne zusätzliche Initialisierung einsatzbereit.

Überprüfung der Version und Verfügbarkeit von smartctl

Als erster Schritt wird empfohlen zu überprüfen, ob das Dienstprogramm korrekt installiert und im System verfügbar ist:

smartctl --version

Der Befehl gibt die Paketversion und eine Liste der unterstützten Technologien aus.

Dies ermöglicht es Ihnen:

  • sicherzustellen, dass eine aktuelle Version verwendet wird;
  • die Unterstützung von NVMe, RAID und anderen Gerätetypen zu überprüfen.

Überprüfung der SMART-Unterstützung auf einer bestimmten Festplatte

Als nächstes muss überprüft werden, ob das Laufwerk selbst die SMART-Technologie unterstützt und ob sie auf Geräteebene aktiviert ist.

sudo smartctl -i /dev/sda

Beispiel für eine korrekte Ausgabe:

SMART support is: Available - device has SMART capability. SMART support is: Enabled

Available – die Festplatte unterstützt SMART physisch;
Enabled – die SMART-Datenerfassung ist aktiviert und zum Lesen verfügbar.

Wenn SMART unterstützt, aber deaktiviert ist, wird dies häufig bei neuen oder zuvor unbenutzten Festplatten beobachtet. In einem solchen Fall muss es manuell aktiviert werden:

sudo smartctl -s on /dev/sda

Danach wird empfohlen, den Befehl smartctl -i erneut auszuführen, um sicherzustellen, dass SMART aktiviert ist.

Anzeigen von SMART-Attributen und erste Gesundheitsbewertung

Der Hauptnutzen von SMART liegt in seinen Attributen – numerische Werte, die den Zustand der Festplattenoberfläche, Mechanik und Elektronik widerspiegeln.

Um die Attribute anzuzeigen, verwenden Sie den Befehl:

sudo smartctl -A /dev/sda

Die Ausgabe enthält eine Tabelle von Attributen mit ihren aktuellen Werten und der Historie. Zuerst sollte auf die folgenden Indikatoren geachtet werden:

Schlüsselfelder in der Ausgabe:

  • VALUE (Aktueller Wert): Der normalisierte Wert des Attributs (normalerweise von 1 bis 100, wobei 100 ideal ist). Die Festplatte wird als fehlerhaft angesehen, wenn VALUE ≤ THRESH.
  • WORST (Schlechtester Wert): Der schlechteste Wert, der während des Betriebs der Festplatte erreicht wurde.
  • THRESH (Schwellenwert): Der minimal zulässige Wert für VALUE. Das Überschreiten des Schwellenwerts (VALUE ≤ THRESH) ist ein Zeichen für einen kritischen Zustand.
  • RAW_VALUE: Der "rohe", nicht normalisierte Wert des Attributs. Dies muss analysiert werden, um den Verschleiß zu bewerten und Ereignisse zu zählen.

Schlüsselattribute für HDD (traditionelle Festplatten):

  • Reallocated_Sector_Ct: Eine Zunahme weist auf eine physische Oberflächenverschlechterung hin.
  • Current_Pending_Sector (Sektoren, die zur Neuverteilung anstehen): Instabile Sektoren. Selbst ein einzelner nicht nullwertiger Wert ist ein Warnzeichen.
  • Offline_Uncorrectable (Unkorrigierbare Fehler): Sektoren, die nicht gelesen werden konnten.
  • Power_On_Hours: Die gesamte Betriebszeit der Festplatte.

Schlüsselattribute für SSDs:

  • Retired_Block_Count: Das Äquivalent von Reallocated_Sector_Ct für HDDs. Zeigt die Anzahl der aus dem Dienst genommenen Blöcke an. Selbst ein niedriger Wert mit VALUE=100 kann normal sein.
  • Reallocated_Event_Count: Die Anzahl der Neuverteilungsereignisse.
  • SSD_Life_Left oder Percentage Used/Media Wearout Indicator: Der Prozentsatz der verbleibenden Lebensdauer (oder des Verschleißes). Ein niedriger Wert (z.B. <10%) ist ein Zeichen für einen bevorstehenden Ausfall.
  • Wear_Range_Delta: Ein Indikator für die Gleichmäßigkeit des Verschleißes über die Speicherzellen hinweg.
  • Power_On_Hours_and_Msec: Die gesamte Betriebszeit.
  • Lifetime_Writes_GiB / Lifetime_Reads_GiB (Attribute 241, 242): Das gesamte Volumen der geschriebenen/gelesenen Daten.

Schlüsselattribute für NVMe (über smartctl -a /dev/nvme0):

  • Percentage Used: Der Prozentsatz der verbrauchten Schreibausdauer. Der Hauptindikator für den Verschleiß.
  • Media and Data Integrity Errors: Datenintegritätsfehler.
  • Critical Warning: Kritische Warnflaggen.
  • Temperature: Aktuelle Temperatur.

An diesem Punkt erhält der Administrator ein allgemeines Verständnis des Festplattenzustands und kann offensichtliche Anzeichen von Problemen identifizieren.

Erweiterte Konfiguration und praktische Szenarien

SMART unterstützt integrierte Selbsttests, die vom Laufwerk selbst ohne Beteiligung des Betriebssystems durchgeführt werden.

Der kurze Test ist für eine schnelle Überprüfung der wichtigsten Komponenten ausgelegt:

sudo smartctl -t short /dev/sda

Der lange Test führt einen vollständigen Oberflächenscan durch und dauert erheblich länger:

sudo smartctl -t long /dev/sda

Nach Abschluss des Tests müssen die Ergebnisse überprüft werden:

sudo smartctl -l selftest /dev/sda

Die Ausgabe zeigt an:

  • die Art des Tests;
  • den Abschlussstatus;
  • das Vorhandensein oder Fehlen von Fehlern.

Ein erfolgloser Test ist ein direkter Grund, sich auf den Austausch der Festplatte vorzubereiten.

Arbeiten mit RAID-Controllern

Hardware-RAID-Controller verbergen oft SMART-Daten vor dem System. In solchen Fällen muss der Gerätetyp explizit angegeben werden.

Beispiel für einen LSI-Controller:

smartctl -a -d megaraid,0 /dev/sda

Wo:

  • -a – Schlüssel zur Ausgabe aller verfügbaren SMART-Informationen (Attribute, Protokolle, Fehler, allgemeine Gesundheitsbewertung).
  • -d – Schlüssel zur Angabe des Gerätetyps.
  • megaraid – teilt dem SMART-Treiber mit, dass sich die Festplatte hinter einem LSI/Broadcom-Controller befindet (häufig in Servern verwendet).
  • 0 – die physische Festplattennummer (PD, Physical Drive) im RAID-Array. Dies ist nicht sda, sondern eine eindeutige ID, die vom Controller zugewiesen wird. Sie kann mit dem Controller-Verwaltungsprogramm (z.B. storcli oder MegaCLI) gefunden werden.
  • /dev/sda – in diesem Kontext ist dies nicht die echte Festplatte, sondern ein Pseudo-Gerät, das den RAID-Controller selbst im System darstellt. Typischerweise ist dies /dev/sgX (SCSI Generic) oder einfach /dev/sda, wenn der Controller ein virtuelles Laufwerk erstellt hat.

Typischer Fehler, wenn der Gerätetyp nicht angegeben ist:

SMART support is: Unavailable

Dies bedeutet nicht, dass SMART nicht verfügbar ist – nur dass smartctl den Pfad zur physischen Festplatte nicht automatisch bestimmen konnte. Die Lösung besteht darin, den -d-Parameter korrekt anzugeben.

Diagnose und Fehlerbehebung

Anzeichen möglicher Fehlfunktionen:

  • Zunahme des Reallocated_Sector_Ct-Werts;
  • nicht nullwertiger Current_Pending_Sector;
  • Programm-/Löschfehler (Program_Fail_Count, Erase_Fail_Count);
  • Selbsttestfehler;
  • Zunahme der I/O-Latenz;
  • Fehlermeldungen in Systemprotokollen.

Protokollanalyse:

journalctl -u smartd

dmesg | grep -i error

Erklärung:
Pending Sectors > 0 – hohes Ausfallrisiko;
Reallocated Sectors nehmen zu – fortschreitende Verschlechterung;
Selbsttest FEHLGESCHLAGEN – die Festplatte muss ersetzt werden.

Identifizierung von Problemquellen

Um Fehlalarme auszuschließen, ist es wichtig, SMART-Daten mit der tatsächlichen Last zu korrelieren.

iostat -x 1

iotop

Überprüfung, wo die Festplatte eingehängt ist:

lsblk -o NAME,SERIAL,MOUNTPOINT

Identifizierung von Controllern:

lspci | grep -i raid

Zusätzliche Metriken:

  • Temperatur über 50 °C;
  • Zunahme von CRC-Fehlern;
  • instabile SMART-Werte.

Konfiguration von Administratorbenachrichtigungen, wenn SMART-Metriken Schwellenwerte erreichen

Das bloße Vorhandensein von SMART-Daten garantiert noch nicht die Sicherheit der Infrastruktur. Ein Schlüsselelement der Überwachung ist die rechtzeitige Benachrichtigung des Administrators in dem Moment, in dem sich der Zustand der Festplatte zu verschlechtern beginnt, aber noch kein Ausfall aufgetreten ist.

Der Benachrichtigungsmechanismus ermöglicht es Ihnen:

  • Festplattenverschlechterung in einem frühen Stadium zu erkennen;
  • den Austausch der Festplatte im Voraus zu planen;
  • Notfallausfälle und Datenverluste zu vermeiden;
  • innerhalb geplanter Wartungsfenster zu arbeiten.

In smartmontools ist der smartd-Daemon für das Senden von Benachrichtigungen verantwortlich. Er verfolgt automatisch Änderungen in SMART-Attributen und reagiert auf Abweichungen von der Norm.

Funktionsweise von smartd-Benachrichtigungen

Der smartd-Daemon fungiert als Hintergrunddienst und führt die folgenden Aufgaben aus:

  1. Fragt periodisch die SMART-Attribute der Festplatte ab.
  2. Vergleicht aktuelle Werte mit: Werksschwellenwerten, vorherigen Werten (Änderungsdynamik).
  3. Erkennt: Wachstum kritischer Attribute, Auftreten neuer Fehler, Selbsttestfehler.
  4. Erzeugt eine Benachrichtigung und sendet sie an den Administrator.

Anforderungen für das Funktionieren von Benachrichtigungen

Vor der Konfiguration muss sichergestellt werden, dass Folgendes vorhanden ist:

  • ein MTA (Postfix, Exim, Sendmail, ssmtp) ist im System installiert und korrekt konfiguriert;
  • der Server ist in der Lage, ausgehende E-Mails zu senden;
  • die E-Mail-Adresse des Administrators für den Empfang von Benachrichtigungen ist definiert.

Beispiel für die Konfiguration von ssmtp – ein leichtgewichtiger und einfacher MTA zum Senden von E-Mails aus dem System.

Installation:

Debian/Ubuntu:

sudo apt update && sudo apt install ssmtp mailutils -y

RHEL:

sudo dnf install ssmtp mailx

Erstellen Sie die Konfigurationsdatei:

sudo nano /etc/ssmtp/ssmtp.conf

und bearbeiten Sie den Inhalt:

# Standard-Absenderadresse [email protected] # SMTP-Server und Port Ihres E-Mail-Anbieters mailhub=smtp.your-domain.com:587 # Alternatives Beispiel: # mailhub=smtp.gmail.com:587 # Für Gmail # Authentifizierungsdaten [email protected] AuthPass=your-password # Verschlüsselungseinstellungen UseSTARTTLS=YES # Verwenden Sie STARTTLS UseTLS=YES # Verwenden Sie TLS FromLineOverride=YES # Überschreiben der Absenderadresse zulassen # Hostname (geben Sie den Namen Ihres Servers an) hostname=server1.your-domain.com # Sie können hostname=localhost verwenden oder den tatsächlichen Hostnamen des Systems angeben

Speichern Sie die Datei und konfigurieren Sie die Zugriffsberechtigungen:

sudo chmod 640 /etc/ssmtp/ssmtp.conf

sudo chown root:mail /etc/ssmtp/ssmtp.conf

Konfigurieren Sie die Absender (revaliases):

sudo nano /etc/ssmtp/revaliases

root:[email protected]:smtp.your-domain.com:587 www-data:[email protected]:smtp.your-domain.com:587

Für den erfolgreichen Versand von Nachrichten müssen die folgenden Ports auf dem Server geöffnet sein: 587 (primär für den Versand mit STARTTLS-Verschlüsselung), oder 25 (Standard-SMTP), 465 (sicheres SMTP mit SSL), wenn sie von der Konfiguration bereitgestellt werden.

Grundlegender Test des E-Mail-Versands:

echo "SMART-Testnachricht" | mail -s "SMART-Benachrichtigungstest" [email protected]

Sie können den Absender explizit angeben:

echo "SMART-Testnachricht" | mail -s "SMART-Benachrichtigungstest" -a "From: [email protected]" [email protected]

Oder direkt über ssmtp:

echo "SMART-Testnachricht" | ssmtp [email protected]

[email protected] – die Empfängeradresse, an die die Nachricht gesendet wird.

Info

Wenn die E-Mail nicht zugestellt wird, ist eine weitere Konfiguration von smartd sinnlos, bis die Probleme mit der E-Mail-Zustellung gelöst sind.

Die Konfiguration der SMART-Benachrichtigungen erfolgt in der Datei:

/etc/smartd.conf

Beispiel einer einfachen funktionierenden Konfiguration:

/dev/sda -a -o on -S on -m [email protected]

Parameter:

  • /dev/sda – die überwachte Festplatte;
  • -a – vollständiger Satz von Überprüfungen;
  • -S on – Attributspeicherung zwischen Neustarts ist aktiviert;
  • -o on – automatische Offline-Datenerfassung ist aktiviert;
  • -m – Benachrichtigungen werden an die angegebene E-Mail gesendet.

Ab diesem Punkt beginnt smartd, den Zustand der Festplatte im Hintergrund zu überwachen.

Benachrichtigungen bei Annäherung an Schwellenwerte

Ein Schlüsselmerkmal von smartd ist, dass es Änderungen in Attributwerten überwacht, nicht nur deren kritische Überschreitung.

In der Praxis bedeutet dies, dass eine Benachrichtigung gesendet werden kann:

  • bei erstmaligem Auftreten von Current_Pending_Sector;
  • bei einer Zunahme von Reallocated_Sector_Ct, auch wenn der Schwellenwert noch nicht erreicht ist;
  • bei Erkennung von Selbsttestfehlern;
  • bei Verschlechterung von NVMe-Parametern.

Die bedeutendsten Attribute für einen frühen Ausfall:

  • Reallocated_Sector_Ct
  • Current_Pending_Sector
  • Offline_Uncorrectable
  • Media and Data Integrity Errors (NVMe)
  • Percentage Used (SSD/NVMe)

Selbst minimale Änderungen in diesen Parametern sollten als Grund für Aufmerksamkeit betrachtet werden.

Verwendung von Selbsttests als Benachrichtigungsquelle

Um die Informationsfülle zu erhöhen, wird empfohlen, die Attributüberwachung mit regelmäßigen Selbsttests zu kombinieren.

Beispielkonfiguration mit einem Zeitplan:

/dev/sda -a -o on -S on \ -s (S/../.././02|L/../../6/03) \ -m [email protected]

Funktionslogik:

  • ein kurzer Test wird täglich durchgeführt;
  • ein vollständiger Test wird einmal pro Woche durchgeführt;
  • bei jedem Testfehler erhält der Administrator eine Benachrichtigung.

Verwaltung der Benachrichtigungshäufigkeit und -menge

Um übermäßige Warnungen zu vermeiden, wird der Parameter -M once verwendet:

/dev/sda -a -m [email protected] -M once

In diesem Modus:

  • wird eine Benachrichtigung bei der ersten Erkennung eines Problems gesendet;
  • nachfolgende Nachrichten werden nicht dupliziert, bis die Ursache behoben ist.

Um das Benachrichtigungssystem zu testen, können Sie -M test verwenden. Dies ermöglicht es Ihnen zu überprüfen, ob smartd in der Lage ist, Nachrichten zu senden, ohne auf einen tatsächlichen Fehler zu warten.

Fazit

Im Rahmen dieses Handbuchs wurde der vollständige Zyklus der Implementierung und des Betriebs von smartctl und des smartd-Daemons als Werkzeug für proaktives Festplattengesundheitsmonitoring systematisch überprüft. Die grundlegenden Prinzipien der SMART-Funktion, praktische Methoden zur Attributanalyse, das Starten und Interpretieren von Selbsttests, die Besonderheiten der Arbeit mit NVMe-Laufwerken und RAID-Controllern sowie Diagnosemethoden und Techniken zur Identifizierung von Ursachen von Problemen wurden behandelt. Besonderes Augenmerk wurde auf die Konfiguration von Benachrichtigungen gelegt, die es ermöglichen, Festplattenverschlechterung in frühen Stadien zu erkennen, noch bevor ein kritischer Ausfall auftritt.

Richtig konfiguriertes SMART-Monitoring ist ein integraler Bestandteil einer zuverlässigen Serverinfrastruktur und sollte als obligatorischer Betriebsstandard betrachtet werden. Die Verwendung von smartctl und smartd ermöglicht es dem Systemadministrator, von der reaktiven Lösung von Vorfällen zu einer bewussten, verwaltbaren Wartung des Festplattensubsystems überzugehen, wodurch die Risiken von Ausfallzeiten, Datenverlusten und ungeplanten Vorfällen reduziert werden, während gleichzeitig eine solide Grundlage für weitere Automatisierung und Integration mit zentralisierten Überwachungssystemen geschaffen wird.

VAT

  • Other

    Ex. VAT

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    22%
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • germany
  • Español
  • Italiano
  • Poland
  • Русский
  • Slovenski
  • Türkçe
  • ukraine
  • kingdom
  • French
  • Hrvatska
  • Other
  • Austria
  • Belgium
  • Bulgaria
  • Croatia
  • Cyprus
  • Czech Republic
  • Denmark
  • Estonia
  • Finland
  • France
  • Germany
  • Greece
  • Hungary
  • Ireland
  • Italy
  • Latvia
  • Lithuania
  • Luxembourg
  • Malta
  • Netherlands
  • Poland
  • Portugal
  • Romania
  • Slovakia
  • Slovenia
  • Spain
  • Sweden
  • USA