# 1. Crea un file di swap da 1 GB
Codice: Seleziona tutto
sudo fallocate -l 1G /swapfileCodice: Seleziona tutto
sudo chmod 600 /swapfileCodice: Seleziona tutto
sudo mkswap /swapfileCodice: Seleziona tutto
sudo swapon /swapfileCodice: Seleziona tutto
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstabSubito dopo:
Codice: Seleziona tutto
free -hSwap: 1.0Gi 0B 1.0Gi
Puoi anche regolare la "tendenza" del sistema a usare lo swap con questo comando:
Codice: Seleziona tutto
echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.confCodice: Seleziona tutto
sudo sysctl -pTutto pronto: swap attivo, niente riavvio richiesto.
Ecco uno script che controlla periodicamente l’uso della swap e ti avvisa nel log se il sistema inizia a usarla (il che può indicare che la RAM è satura o che un processo sta consumando troppo).
Codice: Seleziona tutto
#!/bin/bash
# Soglia di utilizzo swap (in MiB) per segnalare allerta
SWAP_THRESHOLD_MB=50
# Ottieni quantità di swap usata in MiB
swap_used=$(free -m | awk '/Swap:/ {print $3}')
# File di log
LOGFILE="/var/log/swap_monitor.log"
# Timestamp
NOW=$(date "+%Y-%m-%d %H:%M:%S")
if [ "$swap_used" -ge "$SWAP_THRESHOLD_MB" ]; then
echo "[$NOW] ⚠️ Swap in uso: ${swap_used} MiB (supera soglia ${SWAP_THRESHOLD_MB} MiB)" >> "$LOGFILE"
else
echo "[$NOW] ✅ Swap OK: ${swap_used} MiB usati" >> "$LOGFILE"
fi
Crea lo script
Codice: Seleziona tutto
nano /root/check_swap_usage.shRendilo eseguibile
Codice: Seleziona tutto
chmod +x /root/check_swap_usage.shCodice: Seleziona tutto
sudo crontab -eCodice: Seleziona tutto
*/30 * * * * /root/check_swap_usage.shCodice: Seleziona tutto
cat /var/log/swap_monitor.logPuoi aumentare o diminuire la soglia (SWAP_THRESHOLD_MB)

