Ai server piccoli la memoria finisce nel momento peggiore: un apt upgrade, una build Docker, il backup notturno. Senza swap, l'OOM killer del kernel sceglie un processo e lo termina, spesso il tuo database. Un file di swap è una cintura di sicurezza economica che dà una via d'uscita a quei picchi. Bastano cinque comandi.
1. Controlla cosa hai
swapon --show
free -h
Se swapon --show non stampa nulla, non c'è ancora swap.
2. Crea il file di swap
fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
Il chmod 600 è importante: lo swap può contenere frammenti di qualsiasi cosa sia in memoria, segreti compresi, quindi deve poterlo leggere solo root. Se fallocate fallisce con «operation not supported», usa invece dd:
dd if=/dev/zero of=/swapfile bs=1M count=2048 status=progress
3. Rendilo permanente
Senza questo passaggio, lo swap sparisce al riavvio:
echo '/swapfile none swap sw 0 0' >> /etc/fstab
4. Regola la swappiness
Chiedi al kernel di preferire la RAM e usare lo swap soprattutto sotto pressione:
echo 'vm.swappiness=10' > /etc/sysctl.d/99-swap.conf
sysctl --system
5. Verifica
swapon --show
free -h
Dovresti vedere un dispositivo di swap da 2 GB, e cat /proc/sys/vm/swappiness dovrebbe stampare 10.
Di che dimensione?
- Server da 1–2 GB di RAM: 1–2 GB di swap.
- 4 GB o più: 1–2 GB bastano comunque come rete di sicurezza.
Non dimensionare lo swap come «il doppio della RAM». Su un server, lo swap serve ad assorbire picchi brevi, non a far girare carichi che non stanno in memoria.
Quando lo swap non è la risposta
Osservalo per qualche giorno:
vmstat 5
Le colonne si e so mostrano le pagine che entrano ed escono dallo swap ogni secondo. Un'attività occasionale è normale. Valori costantemente diversi da zero significano che al server manca memoria e tutto aspetta il disco. A quel punto la soluzione è più RAM: vedi quanta RAM serve a un VPS. Su EQVPS puoi passare a un piano superiore senza reinstallare; i tuoi dati restano dove sono.
Commenti
Ancora nessun commento. Sii il primo.