−25%

på Windows vid årsbetalning, till 31/10. Till paketen

EQVPS

Så lägger du till en swapfil på en Linux-VPS

Skapa en swapfil med fem kommandon, låt den överleva omstarter och justera swappiness, plus hur mycket swap du ska lägga till och när den verkliga lösningen är mer RAM.

Små servrar får slut på minne i sämsta tänkbara ögonblick: en apt upgrade, ett Docker-bygge, nattens backup. Utan swap väljer kärnans OOM killer en process och dödar den, ofta din databas. En swapfil är ett billigt säkerhetsbälte som ger topparna någonstans att ta vägen. Det tar fem kommandon.

1. Kolla vad du har

swapon --show
free -h

Om swapon --show inte skriver ut något finns det ingen swap ännu.

2. Skapa swapfilen

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

chmod 600 spelar roll: swap kan innehålla bitar av allt som fanns i minnet, hemligheter inräknade, så bara root ska kunna läsa den. Om fallocate misslyckas med ”operation not supported”, använd dd i stället:

dd if=/dev/zero of=/swapfile bs=1M count=2048 status=progress

3. Gör den permanent

Utan det här steget försvinner swap vid omstart:

echo '/swapfile none swap sw 0 0' >> /etc/fstab

4. Justera swappiness

Be kärnan föredra RAM och använda swap främst under tryck:

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

5. Kontrollera

swapon --show
free -h

Du bör se en swapenhet på 2 GB, och cat /proc/sys/vm/swappiness bör skriva ut 10.

Hur stor?

Dimensionera inte swap som ”dubbla RAM-mängden”. På en server är swap till för att fånga upp korta toppar, inte för att köra uppgifter som inte får plats i minnet.

När swap inte är svaret

Håll koll på den i några dagar:

vmstat 5

Kolumnerna si och so visar sidor som läses in från och skrivs ut till swap per sekund. Enstaka aktivitet är normalt. Ständigt värden över noll betyder att servern har för lite minne och att allt väntar på disken. Då är lösningen mer RAM: se hur mycket RAM en VPS behöver. Hos EQVPS kan du gå upp till en större plan utan ominstallation; dina data ligger kvar där de är.

Relaterat

FAQ

Hur mycket swap ska jag lägga till?

På servrar med 1–2 GB RAM är en swapfil på 1–2 GB en bra standard. På större servrar räcker 1–2 GB fortfarande som skyddsnät: regeln ”dubbla RAM-mängden” kommer från tiden med maskiner på 256 MB.

Gör swap min server snabbare?

Nej. Swap hindrar bara krascher när minnet tar slut för ett ögonblick: en paketuppdatering, ett Docker-bygge, en backup. Minnessidor på disk är tusentals gånger långsammare än RAM. Om servern använder swap hela tiden behöver den mer RAM.

Vad gör swappiness?

Den styr hur gärna kärnan flyttar oanvänt minne till swap. Standardvärdet 60 gör det ganska tidigt; 10 säger åt kärnan att hålla saker i RAM och använda swap främst vid verkligt tryck, vilket passar de flesta servrar.

Varför en swapfil och inte en partition?

En fil skapar, ändrar storlek på och tar bort du på några sekunder på en server som kör, utan att röra partitionstabellen. På moderna filsystem är prestandan densamma.

Hur tar jag bort swap senare?

Kör 'swapoff /swapfile', ta bort raden för /swapfile i /etc/fstab och sedan 'rm /swapfile'.

Kommentarer

Inga kommentarer än. Bli först.

Lämna en kommentar

Kommentarer modereras innan de visas.