Linux · 7 min read · Sep 29, 2025

Come cambiare la Swappiness del tuo sistema Linux

Cos’è la Swappiness?

La maggior parte degli utenti Linux che hanno installato una distribuzione prima, deve aver notato l’esistenza dello “spazio di swap” durante la fase di partizionamento (spesso si trova come /sda5). Questo è uno spazio dedicato nel tuo disco rigido che di solito è impostato ad almeno il doppio della capacità della tua RAM e costituisce la memoria virtuale totale del tuo sistema. Lo spazio di swap può anche essere fornito da un cosiddetto file di swap, che puoi utilizzare nel caso in cui non puoi creare una partizione di swap dedicata. In generale, le partizioni di swap sono preferite rispetto ai file di swap in termini di velocità. Di tanto in tanto, il kernel Linux utilizza questo spazio di swap copiando porzioni dalla tua RAM allo swap, consentendo ai processi attivi che richiedono più memoria di quella fisicamente disponibile di funzionare.

La swappiness è il parametro del kernel che definisce quanto (e con quale frequenza) il tuo kernel Linux copierà i contenuti della RAM nello swap. Il valore predefinito di questo parametro è “60” e può assumere qualsiasi valore da “0” a “100”. Maggiore è il valore del parametro di swappiness, più aggressivamente il tuo kernel effettuerà lo swap.

Perché cambiarlo?

Il valore predefinito è una soluzione universale che non può essere altrettanto efficiente in tutti i singoli casi d’uso, specifiche hardware e necessità degli utenti. Inoltre, la swappiness di un sistema è un fattore primario che determina la funzionalità complessiva e le prestazioni di velocità di un OS. Detto ciò, è molto importante capire come funziona la swappiness e come le varie configurazioni di questo elemento potrebbero migliorare il funzionamento del tuo sistema e quindi la tua esperienza utente quotidiana.

Poiché la memoria RAM è molto più grande e più economica rispetto al passato, ci sono molti utenti oggigiorno che hanno abbastanza memoria da non dover quasi mai utilizzare il file di swap. Il vantaggio ovvio che deriva da questo è che nessuna risorsa di sistema è mai occupata dal processo di swapping e che i file memorizzati nella cache non vengono spostati avanti e indietro dalla RAM allo swap e viceversa senza motivo.

Come cambiare la Swappiness?

Il valore del parametro di swappiness è memorizzato in un semplice file di configurazione di testo situato in /proc/sys/vm e si chiama “swappiness”. Se navighi lì attraverso il gestore di file, sarai in grado di localizzare il file e aprirlo per controllare la swappiness del tuo sistema. Puoi anche controllarlo o cambiarlo tramite il terminale (che è più veloce) digitando il seguente comando:

sudo sysctl vm.swappiness=10

o qualsiasi altro valore tra “0” e “100” invece del valore “10” che ho usato. Per assicurarti che il valore di swappiness sia stato cambiato correttamente a quello desiderato, digita semplicemente:

cat /proc/sys/vm/swappiness

nel terminale di nuovo e il valore attivo verrà restituito.

Linux Swappiness

Questa modifica ha un effetto immediato sul funzionamento del tuo sistema e quindi non è necessario riavviare. Infatti, il riavvio ripristinerà la swappiness al suo valore predefinito (60). Se hai testato a fondo il valore di swapping desiderato e hai scoperto che funziona in modo affidabile, puoi rendere la modifica permanente navigando in /etc/sysctl.conf, che è un altro file di configurazione di testo. Puoi aprirlo come root (amministratore) e aggiungere la seguente riga in fondo per determinare la swappiness: vm.swappiness=”il tuo valore desiderato qui”. Poi, salva il file di testo e hai finito!

Imposta il valore di swappiness in Linux

Fattori da considerare

Ci sono alcune considerazioni matematiche coinvolte nella swappiness che dovrebbero essere considerate quando cambi le tue impostazioni. Il valore del parametro impostato su “60” significa che il tuo kernel effettuerà lo swap quando la RAM raggiunge il 40% della capacità. Impostarlo su “100” significa che il tuo kernel cercherà di scambiare tutto. Impostarlo su 10 (come ho fatto in questo tutorial) significa che lo swap verrà utilizzato quando la RAM è piena al 90%, quindi se hai abbastanza memoria RAM, questa potrebbe essere un’opzione sicura che migliorerebbe facilmente le prestazioni del tuo sistema.

Alcuni utenti, però, vogliono avere tutto e questo significa che impostano lo swapping su “1” o addirittura “0”. “1” è l’impostazione di “swapping attivo” minima possibile mentre “0” significa disabilitare completamente lo swapping e tornare a quando la RAM è completamente riempita. Anche se queste impostazioni possono ancora teoricamente funzionare, testarle su sistemi a bassa specifica di 2GB di RAM o meno potrebbe causare blocchi e rendere l’OS completamente non reattivo. In generale, scoprire qual è il giusto equilibrio tra le prestazioni complessive del sistema e la latenza di risposta richiede un certo esperimento (come sempre).

Domande Frequenti

Cos’è lo Spazio di Swap in Linux?

Lo spazio di swap in Linux è una porzione del disco rigido che viene utilizzata quando la RAM (Memoria ad Accesso Casuale) è completamente utilizzata. Quando il sistema richiede più risorse di memoria e la RAM è piena, le pagine inattive in memoria vengono spostate nello spazio di swap. Questo processo fornisce risorse di memoria aggiuntive al sistema a scapito di alcune prestazioni, poiché accedere al disco rigido è più lento che accedere alla RAM.

Cos’è la Swappiness in Linux?

La swappiness è un parametro del kernel Linux che controlla il grado in cui il sistema favorisce lo swapping della memoria in esecuzione, rispetto al rilascio delle pagine dalla cache delle pagine del sistema. La swappiness può avere un valore compreso tra 0 e 100; un valore più basso significa che si favorisce meno lo swapping, mentre un valore più alto significa che si favorisce di più lo swapping.

Come posso controllare il valore attuale di Swappiness?

Puoi controllare il valore attuale di swappiness eseguendo il comando cat /proc/sys/vm/swappiness nel terminale. Questo mostrerà il valore attuale di swappiness, che è tipicamente impostato su 60 per impostazione predefinita in molte distribuzioni Linux.

Come posso cambiare il valore di Swappiness?

Per cambiare temporaneamente il valore di swappiness, usa il comando sudo sysctl vm.swappiness=, sostituendo con il tuo livello di swappiness desiderato. Per rendere la modifica permanente, aggiungi vm.swappiness = al tuo file /etc/sysctl.conf e poi esegui sudo sysctl -p.

Aumentare la Swappiness migliora le prestazioni?

Non necessariamente. Aumentare la swappiness può portare a un uso più frequente dello spazio di swap, il che può rallentare il sistema poiché accedere ai dati sul disco rigido è più lento che in RAM. Tuttavia, può aiutare in situazioni in cui la memoria è costantemente piena e i programmi vengono terminati. È un equilibrio tra mantenere più applicazioni in memoria e il costo delle prestazioni dell’utilizzo dello spazio di swap.

È una buona idea avere uno spazio di swap più grande della RAM?

La dimensione dello spazio di swap dipende dal carico di lavoro e dalla configurazione del tuo sistema. In passato, la regola generale era avere uno spazio di swap doppio rispetto alla RAM. Tuttavia, con i sistemi moderni che hanno grandi quantità di RAM, questo è spesso superfluo. È più importante monitorare e comprendere l’uso della memoria del tuo sistema e regolare di conseguenza.

Posso eseguire Linux senza spazio di swap?

Sì, è possibile eseguire Linux senza spazio di swap, specialmente su sistemi con grandi quantità di RAM. Tuttavia, non avere spazio di swap può portare a problemi quando la RAM è esaurita, come l’uccisione delle applicazioni o l’instabilità del sistema.

Come influisce la Swappiness sugli SSD (Solid State Drives)?

La swappiness può essere un fattore importante per i sistemi che utilizzano SSD, poiché scritture frequenti nello spazio di swap possono potenzialmente ridurre la durata di un SSD a causa dei suoi limiti di resistenza alla scrittura. Tuttavia, gli SSD moderni sono generalmente più durevoli e l’impatto effettivo può variare a seconda della qualità dell’SSD e del carico di lavoro.

Posso cambiare la dimensione dello spazio di swap su un sistema in esecuzione?

Puoi regolare la dimensione dello spazio di swap su un sistema in esecuzione. Puoi creare un nuovo file di swap o ridimensionare uno esistente, quindi attivarlo o disattivarlo utilizzando i comandi swapon e swapoff. Assicurati sempre che il ridimensionamento dello swap non interferisca con la stabilità del sistema.

Come posso monitorare l’uso dello swap sul mio sistema?

Per monitorare l’uso dello swap, puoi utilizzare comandi come free -m per vedere l’uso della memoria e dello swap, vmstat per statistiche dettagliate sulla memoria virtuale e top o htop per monitorare l’uso della memoria e dello swap in tempo reale insieme ad altre metriche di sistema.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.