linux-ubuntu-debian storage filesystem ext4 xfs btrfs lvm

Filesystem Choices: Ext4, XFS, Btrfs & LVM (Artikel 019)

Vergleich der gängigen Linux-Dateisysteme. Entscheidungshilfe für Enterprise-Szenarien unter Berücksichtigung von Performance, Skalierbarkeit und Features wie Snapshots.

# Filesystem Deep Dive: Das richtige Fundament für Ihre Daten

TL;DR / Management Summary Die Wahl des Dateisystems beeinflusst die Performance, Datensicherheit und Wartbarkeit eines Servers massiv. Während Ext4 der robuste Allrounder bleibt, ist XFS der König für große Dateien und High-Performance-Workloads. Btrfs bietet moderne Features wie Copy-on-Write und Snapshots, während LVM als Abstraktionsschicht darunter unverzichtbar für flexibles Resizing ist. Empfehlung: XFS auf LVM für Datenbanken/General Purpose; Btrfs für Workstations oder Backup-Targets.


# 1. Einführung & Architektur

Wie Daten auf die Disk kommen.

Das Dateisystem ist die Logik, die dem Kernel sagt, wo welcher Block auf dem physikalischen Datenträger liegt.

# Der Storage Stack (Mermaid)

graph TD
    A[Applikation: Write File] --> B[VFS: Virtual File System]
    B --> C[Filesystem: Ext4/XFS/Btrfs]
    C --> D[Device Mapper / LVM]
    D --> E[Block Layer: I/O Scheduler]
    E --> F[Hardware: SSD / NVMe / HDD]

# 2. Die Kontrahenten im Detail

Stärken und Schwächen.

# Ext4 (Fourth Extended Filesystem)

Der Standard für fast alles.

  • Vorteil: Extrem stabil, kann online vergrößert werden, sehr geringer Overhead.
  • Nachteil: Kein natives Snapshotting (braucht LVM), Skalierung bei sehr großen Dateisystemen (>16TB) schlechter als XFS.

# XFS (The Enterprise Giant)

Standard bei RHEL und ideal für große Datenmengen.

  • Vorteil: Exzellente Performance bei parallelen I/O Zugriffen, extrem schnelle Check-Zeiten (xfs_repair).
  • Nachteil: Kann nicht verkleinert werden (nur vergrößert!).

# Btrfs (B-Tree Filesystem)

Das “Next Gen” Dateisystem (ähnlich wie ZFS).

  • Vorteil: Copy-on-Write (CoW), native Snapshots, integriertes RAID, Checksummen gegen “Silent Data Corruption”.
  • Nachteil: Komplexer zu verwalten, Performance-Einbußen bei Datenbanken (wegen CoW Fragmentation).

# 3. LVM: Die Rettung für Admins

Warum wir fast nie direkt auf Partitionen formatieren.

LVM (Logical Volume Manager) fügt eine Schicht zwischen Disk und Dateisystem ein.

  • PV (Physical Volume): Die echte Disk.
  • VG (Volume Group): Ein Pool aus Disks.
  • LV (Logical Volume): Die “virtuelle” Partition, auf der das Filesystem liegt.

Enterprise-Regel: Installieren Sie Server immer auf LVM. Es erlaubt Ihnen, im laufenden Betrieb Speicherplatz von einer Partition (z.B. /home) zu einer anderen (z.B. /var/lib/mysql) zu schieben.


# 4. Entscheidungs-Matrix (Enterprise)

Use Case Empfehlung Grund
OS Root (/) Ext4 auf LVM Stabil, pflegeleicht, schmerzfreies Resizing.
Datenbanken XFS auf LVM Optimiert für parallele Zugriffe und große Files.
Backup-Server Btrfs Snapshots und Kompression sparen massiv Platz.
Virtualisierung Ext4 oder XFS Konsistente Performance (Latenz ist wichtig).

# 5. Day-2 Operations: Resizing im Alltag

Wenn der Platz knapp wird.

# Vergrößern (Online - Ohne Downtime!)

# 1. Physical Volume vergrößern (nachdem die VM-Disk vergrößert wurde)
pvresize /dev/sda2

# 2. Logical Volume vergrößern (+10GB)
lvextend -L +10G /dev/vg0/lv_root

# 3. Filesystem anpassen (Ext4)
resize2fs /dev/vg0/lv_root

# 3. Filesystem anpassen (XFS)
xfs_growfs /

# 6. Troubleshooting & “War Stories”

Wenn der Superblock stirbt.

# Story 1: “XFS und die Einbahnstraße”

Symptom: Ein Kunde hat versehentlich 1TB für /boot reserviert und will den Platz zurück. Ursache: XFS unterstützt kein Shrinking. Lösung: Backup der Daten, Dateisystem löschen, LV verkleinern, XFS neu erstellen, Daten zurückspielen. Lektion: Planen Sie XFS-Größen konservativ oder nutzen Sie Ext4, wenn Verkleinerungen wahrscheinlich sind.

# Story 2: “Btrfs Metadata Full”

Symptom: df -h sagt 50% frei, aber beim Schreiben kommt “No space left on device”. Ursache: Btrfs trennt zwischen Daten- und Metadaten-Chunks. Die Metadaten-Chunks sind voll. Lösung: btrfs balance start / ausführen, um den Speicher neu zu organisieren.


# 7. Fazit & Empfehlung

Für 90% aller Linux-Server ist Ext4 auf LVM die sicherste Wahl. Wenn Sie hohe I/O Lasten haben (Datenbanken), nutzen Sie XFS. Experimentieren Sie mit Btrfs nur, wenn Sie die Snapshot-Features wirklich brauchen und die Komplexität verstehen.


# Anhang: Cheatsheet

Tool Zweck
lsblk -f Zeigt Dateisystem-Typen und Mountpoints.
pvs / vgs / lvs Schnelle Übersicht der LVM-Struktur.
xfs_info /dev/mapper/... Zeigt Details zu einem XFS Volume.
tune2fs -l /dev/... Zeigt Details zu einem Ext4 Volume.
fsck -n /dev/... Dateisystem-Check im Read-Only Modus (sicher).