Zum Inhalt springen
CitexNode
Alle Anleitungen

Swap anlegen

Eine Swap-Datei als Puffer für knappen RAM, swappiness einstellen und prüfen.

3 Min. Lesezeit

Gilt für Debian 12/13, Ubuntu 22.04/24.04, AlmaLinux 9 und Rocky Linux 9.

Swap ist Platz auf der Platte, den Linux nutzt, wenn der RAM voll ist. Er ist viel langsamer als RAM, verhindert aber, dass der Kernel bei einer kurzen Spitze ein Programm hart beendet (Out of memory: Killed process …). Swap ersetzt keinen RAM: Braucht dein Server dauerhaft mehr, nimm ein größeres Paket.

1. Nachsehen, ob schon Swap da ist

bash
swapon --show
free -h

Gibt swapon --show nichts aus und steht bei free in der Zeile Swap: überall 0B, hat der Server noch keinen.

2. Swap-Datei anlegen

Als Faustregel: so groß wie der RAM, höchstens 4 GB. Hier 2 GB:

bash
fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile

chmod 600 ist wichtig: Im Swap können Passwörter und andere Daten aus dem RAM landen.

3. Dauerhaft eintragen

Damit der Swap nach einem Neustart wieder da ist:

bash
cp /etc/fstab /etc/fstab.bak
echo '/swapfile none swap sw 0 0' >> /etc/fstab

Prüf die Zeile, bevor du neu startest:

bash
tail -n 3 /etc/fstab
findmnt --verify

findmnt --verify darf keine Fehler melden. Ein Tippfehler in /etc/fstab kann den Start verhindern; dann hilft die Konsole im Dashboard, und die Sicherung /etc/fstab.bak liegt bereit.

4. swappiness einstellen

vm.swappiness sagt, wie früh Linux auslagert (0 bis 100, Standard 60). Für einen Server mit Swap als Notreserve ist 10 ein guter Wert:

bash
echo 'vm.swappiness=10' > /etc/sysctl.d/99-swappiness.conf
sysctl --system

Prüfen, ob es geklappt hat

bash
swapon --show
free -h
cat /proc/sys/vm/swappiness

Erwartet: /swapfile mit 2G in der Liste, in free eine Zeile Swap: mit 2.0Gi und 10 bei swappiness. Nach einem reboot müssen alle drei gleich aussehen.

Größe ändern oder entfernen

bash
swapoff /swapfile
rm /swapfile

Zum Vergrößern danach Schritt 2 mit der neuen Größe wiederholen; die Zeile in /etc/fstab bleibt gleich. Zum Entfernen auch die Zeile /swapfile … aus /etc/fstab löschen.

swapoff braucht so viel freien RAM, wie gerade im Swap liegt. Ist er voll, erst Programme beenden.

Häufige Fehler

MeldungUrsache und Lösung
swapon: /swapfile: insecure permissions 0644chmod 600 /swapfile.
swapon: /swapfile: swapon failed: Invalid argumentDie Datei hat Lücken. Löschen und mit dd if=/dev/zero of=/swapfile bs=1M count=2048 statt fallocate neu anlegen, dann chmod, mkswap, swapon.
fallocate: fallocate failed: No space left on deviceNicht genug Platz. df -h / zeigt den freien Speicher; kleinere Datei nehmen.
Server ist trotz Swap sehr langsamEr lagert ständig aus. free -h und top prüfen; der RAM reicht dauerhaft nicht.

Wie es weitergeht

  • RAM-Verbrauch im Blick behalten: der Reiter Auslastung im Dashboard deines vServers.
  • Mehr RAM: die Pakete unter /vserver.
  • Hilfe: Ticket.