Zum Hauptinhalt springen
Zurück zur Kategorie

Swap-Speicher erstellen und konfigurieren: Vollständiger Leitfaden

Was ist Linux-Swap-Speicher, wie erstellt man eine Swap-Datei, konfiguriert Swappiness, überwacht die Swap-Nutzung und optimiert die Speicherleistung.

Lesezeit: 9 min Serververwaltung
swapvirtueller speicherswappinesslinuxarbeitsspeicherleistungserver

Inhaltsverzeichnis

Swap-Speicher erstellen und konfigurieren: Vollständiger Leitfaden

Swap-Speicher ist virtueller Speicher auf der Festplatte, den das Betriebssystem verwendet, wenn der physische RAM voll ist. Er verhindert Systemabstürze unter Speicherdruck und hält Anwendungen am Laufen. Dieser Leitfaden behandelt das Erstellen einer Swap-Datei, die Konfiguration und die Überwachung.

Swap ersetzt keinen RAM; er dient nur als Notfallpuffer. Dauerhaft hohe Swap-Nutzung ist ein Zeichen für unzureichenden RAM.

Was ist Swap und wann wird er benötigt?

Swap-Speicher kann auf zwei Arten erstellt werden:

MethodeVorteilNachteil
Swap-PartitionEtwas schnellerFeste Größe
Swap-DateiFlexibel, größenveränderlichEtwas langsamer

Swap-Dateien werden auf modernen Systemen bevorzugt, da ihre Größe dynamisch geändert werden kann.

Wann wird Swap benötigt?

  • RAM ist 2 GB oder weniger
  • Speicherintensive Anwendungen werden ausgeführt
  • Hibernate (Ruhezustand) soll verwendet werden
  • Als Sicherheitspuffer gegen unerwartete Speicherspitzen

Aktuellen Swap-Status prüfen

hljs bash
# Swap-Nutzung anzeigen
swapon --show

# Speicher- und Swap-Zusammenfassung
free -h

# Detaillierte Speicherinfo
cat /proc/meminfo | grep -i swap

# Swap-Bereiche auflisten
cat /proc/swaps

Swap-Datei erstellen

Schritt 1: Swap-Datei erstellen

hljs bash
# 2 GB Swap-Datei erstellen (dd-Methode)
sudo dd if=/dev/zero of=/swapfile bs=1M count=2048

# Oder mit fallocate (schneller)
sudo fallocate -l 2G /swapfile

# Dateigröße überprüfen
ls -lh /swapfile

Schritt 2: Sicherheitsberechtigungen setzen

hljs bash
# Nur root kann lesen/schreiben
sudo chmod 600 /swapfile

# Berechtigungen überprüfen
ls -la /swapfile

Schritt 3: Als Swap formatieren

hljs bash
# Als Swap-Speicher markieren
sudo mkswap /swapfile

Schritt 4: Swap aktivieren

hljs bash
# Swap aktivieren
sudo swapon /swapfile

# Überprüfen
swapon --show
free -h

Schritt 5: Dauerhaft machen

Fügen Sie /etc/fstab hinzu, damit Swap beim Neustart automatisch aktiviert wird:

hljs bash
# Zu /etc/fstab hinzufügen
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

# Überprüfen
cat /etc/fstab | grep swap

Swap-Größe ändern

Um die vorhandene Swap-Datei zu vergrößern:

hljs bash
# Swap deaktivieren
sudo swapoff /swapfile

# Neue Datei mit größerer Größe erstellen (4 GB)
sudo fallocate -l 4G /swapfile

# Neu formatieren
sudo mkswap /swapfile

# Wieder aktivieren
sudo swapon /swapfile

# Überprüfen
free -h

Swappiness-Einstellung

Swappiness ist ein Wert zwischen 0-100, der bestimmt, wie aggressiv der Kernel Swap verwendet:

WertVerhalten
0Swap so wenig wie möglich verwenden
10Empfohlen für Server
60Linux-Standard
100Aggressiver Swap-Einsatz
hljs bash
# Aktuellen Swappiness-Wert anzeigen
cat /proc/sys/vm/swappiness

# Vorübergehend ändern (wird beim Neustart zurückgesetzt)
sudo sysctl vm.swappiness=10

# Dauerhaft ändern
echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf

# Änderungen anwenden
sudo sysctl -p

swappiness=10 wird für Server empfohlen. Dies minimiert die Swap-Nutzung, bevor der RAM erschöpft ist, und reduziert die Festplatten-I/O.

Swap-Nutzung überwachen

hljs bash
# Aktueller Speicher- und Swap-Status
free -h

# Kontinuierliche Überwachung (alle 2 Sekunden)
watch -n 2 free -h

# Welche Prozesse verwenden Swap?
for file in /proc/*/status; do
  awk '/VmSwap|Name/{printf $2 " " $3 "\n"}' $file
done | sort -k 2 -n -r | head -10

# Mit vmstat überwachen
vmstat 2 5

Swap deaktivieren

hljs bash
# Vorübergehend deaktivieren
sudo swapoff /swapfile

# Dauerhaft entfernen
sudo swapoff /swapfile
sudo rm /swapfile
# Auch die Swap-Zeile aus /etc/fstab entfernen

Stellen Sie vor dem Deaktivieren von Swap sicher, dass genügend freier RAM vorhanden ist. Andernfalls kann das System auf einen OOM-Fehler (Out of Memory) stoßen.

Fazit

Swap-Speicher ist wichtig für die Systemstabilität, besonders auf Servern mit begrenztem RAM. Das Erstellen einer Swap-Datei, die Optimierung des Swappiness-Werts und die regelmäßige Überwachung der Swap-Nutzung verbessern die Speicherverwaltung Ihres Servers. Swap ist jedoch keine dauerhafte Lösung für unzureichenden RAM — bei dauerhaft hoher Swap-Nutzung sollten Sie ein RAM-Upgrade in Betracht ziehen.