Zum Hauptinhalt springen
Zurück zur Kategorie

RAID-Konfiguration und Festplattenüberwachung: smartctl Anleitung

RAID-Level-Übersicht (0/1/5/10), Software-RAID mit mdadm, Festplattengesundheit mit smartctl, Überwachung mit smartd und SMART-Daten interpretieren.

Lesezeit: 14 min Serververwaltung
raidmdadmsmartctlfestplattengesundheitsmartsoftware-raidlinux

Inhaltsverzeichnis

RAID-Konfiguration und Festplattenüberwachung: smartctl Anleitung

Festplattenausfälle sind in Serverumgebungen unvermeidlich. RAID (Redundant Array of Independent Disks) kombiniert mehrere Festplatten, um Datensicherheit und/oder Leistung zu verbessern. Diese Anleitung behandelt RAID-Level, Software-RAID-Einrichtung unter Linux und Festplattenüberwachung mit smartctl.

RAID-Level

RAID 0 — Striping

Daten werden gleichmäßig auf Festplatten verteilt.

  • Mindestfestplatten: 2
  • Kapazität: Summe aller Festplatten
  • Leistung: Hohe Lese-/Schreibgeschwindigkeit
  • Zuverlässigkeit: Null — wenn eine Festplatte ausfällt, gehen alle Daten verloren
  • Verwendung: Temporäre Daten, leistungsintensive Anwendungen

RAID 1 — Spiegelung (Mirroring)

Daten werden gleichzeitig auf alle Festplatten geschrieben.

  • Mindestfestplatten: 2
  • Kapazität: Kapazität der kleinsten Festplatte
  • Leistung: Lesegeschwindigkeit steigt, Schreibgeschwindigkeit unverändert
  • Zuverlässigkeit: Hoch — wenn eine Festplatte ausfällt, läuft die andere weiter
  • Verwendung: OS-Festplatten, kritische Daten

RAID 5 — Verteilte Parität

Daten und Paritätsinformationen werden auf alle Festplatten verteilt.

  • Mindestfestplatten: 3
  • Kapazität: (N-1) × Festplattenkapazität
  • Leistung: Gutes Lesen, moderates Schreiben
  • Zuverlässigkeit: Toleriert 1 Festplattenausfall
  • Verwendung: Dateiserver, Allzweckspeicher

RAID 10 — Spiegelung + Striping

Kombination aus RAID 1 und RAID 0.

  • Mindestfestplatten: 4
  • Kapazität: Hälfte der Gesamtkapazität
  • Leistung: Sehr hoch
  • Zuverlässigkeit: Toleriert 1 Festplattenausfall pro Paar
  • Verwendung: Datenbanken, hohe Leistung + Zuverlässigkeit

RAID-Vergleichstabelle

MerkmalRAID 0RAID 1RAID 5RAID 10
Min. Festplatten2234
Kapazität100%50%(N-1)/N%50%
LesegeschwindigkeitSehr hochHochHochSehr hoch
SchreibgeschwindigkeitSehr hochNormalModeratHoch
Fehlertoleranz0 Festplatten1 Festplatte1 Festplatte1/Paar
DatensicherheitKeineHochHochSehr hoch

REXE-Physikserver können einen Hardware-RAID-Controller haben. Software-RAID wird vom Linux-Kernel als Alternative zu Hardware-RAID verwaltet.

Software-RAID-Einrichtung mit mdadm

mdadm installieren

hljs bash
# Ubuntu/Debian
sudo apt update
sudo apt install mdadm -y

# CentOS/AlmaLinux
sudo dnf install mdadm -y

Festplatten vorbereiten

hljs bash
# Vorhandene Festplatten auflisten
lsblk
fdisk -l

# Festplatteninformationen anzeigen
sudo fdisk -l /dev/sdb
sudo fdisk -l /dev/sdc

# Vorhandene RAID-Signaturen löschen
sudo mdadm --zero-superblock /dev/sdb
sudo mdadm --zero-superblock /dev/sdc

RAID 1 erstellen

hljs bash
# RAID 1-Array erstellen
sudo mdadm --create /dev/md0 \
  --level=1 \
  --raid-devices=2 \
  /dev/sdb /dev/sdc

# Erstellung bestätigen (yes eingeben)
# RAID-Status überwachen
watch cat /proc/mdstat

# Abschlussstatus prüfen
cat /proc/mdstat

RAID 5 erstellen

hljs bash
# RAID 5-Array erstellen (3 Festplatten)
sudo mdadm --create /dev/md0 \
  --level=5 \
  --raid-devices=3 \
  /dev/sdb /dev/sdc /dev/sdd

# Hot-Spare-Festplatte hinzufügen
sudo mdadm --create /dev/md0 \
  --level=5 \
  --raid-devices=3 \
  --spare-devices=1 \
  /dev/sdb /dev/sdc /dev/sdd /dev/sde

RAID-Konfiguration speichern

hljs bash
# mdadm.conf aktualisieren
sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf

# initramfs aktualisieren
sudo update-initramfs -u

# RAID-Status anzeigen
sudo mdadm --detail /dev/md0

Dateisystem auf RAID erstellen

hljs bash
# ext4-Dateisystem erstellen
sudo mkfs.ext4 /dev/md0

# Einhängepunkt erstellen
sudo mkdir /mnt/raid

# Einhängen
sudo mount /dev/md0 /mnt/raid

# Zu /etc/fstab hinzufügen (dauerhaftes Einhängen)
echo '/dev/md0 /mnt/raid ext4 defaults 0 0' | sudo tee -a /etc/fstab

RAID-Verwaltung

hljs bash
# RAID-Status anzeigen
sudo mdadm --detail /dev/md0

# Alle RAID-Arrays auflisten
cat /proc/mdstat

# Festplatte als fehlerhaft markieren
sudo mdadm /dev/md0 --fail /dev/sdb

# Fehlerhafte Festplatte entfernen
sudo mdadm /dev/md0 --remove /dev/sdb

# Neue Festplatte hinzufügen
sudo mdadm /dev/md0 --add /dev/sdb

Festplattengesundheit mit smartctl prüfen

smartctl liest S.M.A.R.T.-Daten (Self-Monitoring, Analysis and Reporting Technology) von Festplatten.

smartmontools installieren

hljs bash
# Ubuntu/Debian
sudo apt install smartmontools -y

# CentOS/AlmaLinux
sudo dnf install smartmontools -y

Grundlegende smartctl-Befehle

hljs bash
# Festplatteninformationen anzeigen
sudo smartctl -i /dev/sda

# SMART-Status prüfen
sudo smartctl -H /dev/sda
# Ausgabe: SMART overall-health self-assessment test result: PASSED

# Alle SMART-Daten anzeigen
sudo smartctl -a /dev/sda

SMART-Tests ausführen

hljs bash
# Kurztest (1-2 Minuten)
sudo smartctl -t short /dev/sda

# Langtest (mehrere Stunden)
sudo smartctl -t long /dev/sda

# Testergebnisse anzeigen
sudo smartctl -l selftest /dev/sda

SMART-Daten interpretieren

Wichtige SMART-Attribute:

IDAttributBeschreibungKritischer Wert
1Raw_Read_Error_RateRohe LesefehlerrateSollte 0 sein
5Reallocated_Sector_CtNeu zugewiesene SektorenSollte 0 sein
9Power_On_HoursGesamtbetriebsstundenInformativ
187Reported_UncorrectNicht korrigierbare FehlerSollte 0 sein
197Current_Pending_SectorAusstehende SektorenSollte 0 sein
198Offline_UncorrectableOffline nicht korrigierbarSollte 0 sein

Wenn ID 5 (Reallocated_Sector_Ct), 197 (Current_Pending_Sector) oder 198 (Offline_Uncorrectable) größer als 0 sind, könnte die Festplatte kurz vor dem Ausfall stehen. Sichern Sie Ihre Daten sofort!

NVMe-Festplattenprüfung

hljs bash
# NVMe-Festplatteninformationen
sudo smartctl -i /dev/nvme0

# NVMe SMART-Daten
sudo smartctl -a /dev/nvme0

# NVMe-Gesundheitsstatus
sudo smartctl -H /dev/nvme0

Automatische Überwachung mit smartd

smartd läuft im Hintergrund, überwacht kontinuierlich die Festplattengesundheit und sendet Benachrichtigungen bei erkannten Problemen.

smartd konfigurieren

hljs bash
# Konfigurationsdatei bearbeiten
sudo nano /etc/smartd.conf
# Alle Festplatten überwachen, bei Problemen E-Mail senden
DEFAULTS -a -o on -S on -n standby,q -s (S/../.././02|L/../../6/03) -m admin@rexe.tr

# Bestimmte Festplatten überwachen
/dev/sda -a -o on -S on -m admin@rexe.tr
/dev/sdb -a -o on -S on -m admin@rexe.tr

# Alle Festplatten automatisch erkennen
DEVICESCAN -a -o on -S on -m admin@rexe.tr
hljs bash
# smartd-Dienst aktivieren
sudo systemctl enable --now smartd

# Status prüfen
sudo systemctl status smartd

Festplattenüberwachungsbefehle

hljs bash
# Schnelle Gesundheitsprüfung aller Festplatten
for disk in /dev/sd[a-z]; do
  echo "=== $disk ==="
  sudo smartctl -H $disk 2>/dev/null | grep -E "PASSED|FAILED|result"
done

# Festplattentemperatur prüfen
sudo smartctl -A /dev/sda | grep -i temperature

# Betriebsstunden prüfen
sudo smartctl -A /dev/sda | grep Power_On_Hours

# Fehlerprotokolle anzeigen
sudo smartctl -l error /dev/sda

RAID + SMART Integration

hljs bash
# SMART-Status der Festplatten im RAID-Array prüfen
sudo mdadm --detail /dev/md0 | grep -E "State|Active|Failed"

# Gesundheit jeder Festplatte im RAID prüfen
for disk in /dev/sdb /dev/sdc /dev/sdd; do
  echo "=== $disk ==="
  sudo smartctl -H $disk
done

# RAID-E-Mail-Benachrichtigung konfigurieren
sudo nano /etc/mdadm/mdadm.conf
# Zeile hinzufügen: MAILADDR admin@rexe.tr

Verwenden Sie RAID und SMART-Überwachung zusammen. SMART sagt Festplattenausfälle im Voraus vorher, während RAID Datenverlust beim Ausfall verhindert. Zusammen bilden sie eine umfassende Festplattensicherheitsstrategie.

Fazit

RAID und Festplattengesundheitsüberwachung sind grundlegende Komponenten der Datensicherheit auf REXE-Servern. RAID 1 oder RAID 10 bietet hohe Zuverlässigkeit für kritische Daten, während smartctl und smartd Festplattenausfälle erkennen lassen, bevor sie auftreten. Regelmäßige SMART-Tests und RAID-Statusprüfungen sind der effektivste Weg, unerwarteten Datenverlust zu verhindern.