RAID unter Linux: Software-RAID (mdadm) sauber konfigurieren

RAID (Redundant Array of Independent Disks) unter Linux ermöglicht die Kombination mehrerer Festplatten zu einer logischen Einheit. Mit Software-RAID via mdadm lassen sich Redundanz, Performance oder beides gleichzeitig realisieren, ohne spezielle Hardware-Controller zu benötigen. Dieser Leitfaden zeigt praxisnah, wie man RAID unter Linux sauber konfiguriert, überwacht und wartet.

Grundlagen von Software-RAID

Software-RAID arbeitet unabhängig von Hardware-Controllern und nutzt das Betriebssystem, um mehrere Festplatten logisch zusammenzufassen. Die wichtigsten RAID-Level:

  • RAID 0 – Striping für maximale Performance, keine Redundanz
  • RAID 1 – Mirroring für Datensicherheit, Performance moderate
  • RAID 5 – Striping mit Parität, Redundanz bei Ausfall einer Festplatte
  • RAID 6 – Striping mit doppelter Parität, Ausfall von zwei Festplatten möglich
  • RAID 10 – Kombination aus Striping und Mirroring, hohe Performance und Redundanz

Vorbereitung der Festplatten

Bevor ein RAID erstellt wird, sollten die Festplatten vorbereitet werden:

Partitionierung auf identischen Größen

  • Alle Festplatten sollten identische Größe oder zumindest gleiche nutzbare Kapazität haben
  • Partitionierung mit fdisk oder parted, Partitionstyp Linux raid autodetect setzen
# Beispiel: /dev/sdb auf RAID vorbereiten
sudo fdisk /dev/sdb
# n -> neue Partition
# t -> Typ auf "fd" (Linux raid autodetect)
# w -> schreiben

RAID erstellen mit mdadm

Der Befehl mdadm erstellt und verwaltet Software-RAID-Arrays.

Beispiel: RAID 1 (Mirroring) erstellen

sudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1

Beispiel: RAID 5 erstellen

sudo mdadm --create --verbose /dev/md1 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1

RAID initialisieren und synchronisieren

Nach Erstellung beginnt das Array, die Daten zu synchronisieren. Den Fortschritt kann man überwachen:

cat /proc/mdstat
sudo mdadm --detail /dev/md0

RAID dauerhaft einbinden

Damit das RAID nach einem Reboot automatisch eingebunden wird:

  • RAID-Konfiguration sichern: sudo mdadm --detail --scan >> /etc/mdadm/mdadm.conf
  • Dateisystem auf RAID erstellen (z. B. ext4, XFS)
  • In /etc/fstab eintragen
# ext4 auf RAID erstellen
sudo mkfs.ext4 /dev/md0

# Mounten und in fstab eintragen
sudo mount /dev/md0 /mnt/raid
echo '/dev/md0 /mnt/raid ext4 defaults 0 0' | sudo tee -a /etc/fstab

RAID überwachen und warten

Regelmäßiges Monitoring ist entscheidend für die Ausfallsicherheit:

  • cat /proc/mdstat – Status des RAID prüfen
  • mdadm --detail /dev/md0 – detaillierte Informationen
  • SMART-Monitoring der Festplatten (smartctl)
  • E-Mail-Alerts via mdadm konfigurieren:
sudo mdadm --monitor --scan --mail=root@domain.com --delay=1800

RAID im Fehlerfall reparieren

Fällt eine Festplatte aus, kann sie ersetzt und das Array repariert werden:

# Defekte Disk entfernen
sudo mdadm --fail /dev/md0 /dev/sdb1
sudo mdadm --remove /dev/md0 /dev/sdb1

# Neue Disk hinzufügen
sudo mdadm --add /dev/md0 /dev/sde1

# Synchronisation überwachen
cat /proc/mdstat

Best Practices

  • Alle RAID-Disks regelmäßig auf SMART-Fehler prüfen
  • Snapshots und Backups zusätzlich implementieren, RAID ersetzt kein Backup
  • Nur identische oder ähnliche Festplatten verwenden, um Performance-Einbußen zu vermeiden
  • RAID-Level nach Anwendungsfall auswählen: RAID 1 für kritische Daten, RAID 5/6 für großen Storage mit Redundanz, RAID 0 nur für Performance ohne Sicherheit
  • Dokumentation der mdadm-Konfiguration für spätere Wartung und Recovery

Fazit

Software-RAID mit mdadm bietet unter Linux eine flexible und zuverlässige Lösung, um Daten zu schützen und Performance zu optimieren. Mit sauberer Einrichtung, kontinuierlicher Überwachung und klaren Backup-Strategien lässt sich ein robustes Storage-System realisieren, das sowohl für Einsteiger als auch für professionelle Serverumgebungen geeignet ist.

Konfiguriere Cisco Router & Switches und liefere ein Packet-Tracer-Lab/GNS3

Ich biete professionelle Unterstützung im Bereich Netzwerkkonfiguration und Network Automation für private Anforderungen, Studienprojekte, Lernlabore, kleine Unternehmen sowie technische Projekte. Ich unterstütze Sie bei der Konfiguration von Routern und Switches, der Erstellung praxisnaher Topologien in Cisco Packet Tracer, dem Aufbau und Troubleshooting von GNS3- und EVE-NG-Labs sowie bei der Automatisierung von Netzwerkaufgaben mit Netmiko, Paramiko, NAPALM und Ansible. Kontaktieren Sie mich jetzt – klicken Sie hier.

Meine Leistungen umfassen:

  • Professionelle Konfiguration von Routern und Switches

  • Einrichtung von VLANs, Trunks, Routing, DHCP, NAT, ACLs und weiteren Netzwerkfunktionen

  • Erstellung von Topologien und Simulationen in Cisco Packet Tracer

  • Aufbau, Analyse und Fehlerbehebung von Netzwerk-Labs in GNS3 und EVE-NG

  • Automatisierung von Netzwerkkonfigurationen mit Python, Netmiko, Paramiko, NAPALM und Ansible

  • Erstellung von Skripten für wiederkehrende Netzwerkaufgaben

  • Dokumentation der Konfigurationen und Bereitstellung nachvollziehbarer Lösungswege

  • Konfigurations-Backups, Optimierung bestehender Setups und technisches Troubleshooting

Benötigen Sie Unterstützung bei Ihrem Netzwerkprojekt, Ihrer Simulation oder Ihrer Network-Automation-Lösung? Kontaktieren Sie mich jetzt – klicken Sie hier.

Related Articles