Pagina 1 di 1

Crea una partizione di swap, almeno 1 GiB

Inviato: domenica 4 maggio 2025, 15:52
da Matteo
No, non è necessario riavviare il sistema dopo aver creato e attivato lo swap manualmente. Una volta eseguiti i comandi corretti, lo swap è attivo immediatamente.
✅ Ricapitoliamo i comandi (da usare una sola volta):

# 1. Crea un file di swap da 1 GB

Codice: Seleziona tutto

sudo fallocate -l 1G /swapfile
# 2. Imposta i permessi corretti

Codice: Seleziona tutto

sudo chmod 600 /swapfile
# 3. Inizializza il file di swap

Codice: Seleziona tutto

sudo mkswap /swapfile
# 4. Attiva lo swap subito (senza riavvio)

Codice: Seleziona tutto

sudo swapon /swapfile
# 5. Aggiungi allo /etc/fstab per renderlo permanente al riavvio

Codice: Seleziona tutto

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
🔍 Verifica che lo swap sia attivo
Subito dopo:

Codice: Seleziona tutto

free -h
Dovresti vedere qualcosa del genere:
Swap: 1.0Gi 0B 1.0Gi

🛡️ Consiglio aggiuntivo: migliorare la gestione della RAM

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.conf

Codice: Seleziona tutto

sudo sysctl -p
vm.swappiness=10: usa lo swap solo quando la RAM è quasi piena (default è 60, più aggressivo).

Tutto 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
🛠️ Istruzioni per l'uso
Crea lo script

Codice: Seleziona tutto

nano /root/check_swap_usage.sh
Incolla il contenuto sopra, salva (CTRL+O, INVIO, CTRL+X)

Rendilo eseguibile

Codice: Seleziona tutto

chmod +x /root/check_swap_usage.sh
Aggiungilo a cron (es. ogni 30 min)

Codice: Seleziona tutto

sudo crontab -e
E aggiungi:

Codice: Seleziona tutto

*/30 * * * * /root/check_swap_usage.sh
Verifica il log dopo un po'

Codice: Seleziona tutto

cat /var/log/swap_monitor.log
✅ Personalizzabile
Puoi aumentare o diminuire la soglia (SWAP_THRESHOLD_MB)