Introduzione

Cambiare lo spazio di Swap. Lo spazio di swap è una parte del disco rigido utilizzata quando la memoria RAM è piena. Lo spazio di swap può essere una partizione di swap dedicata o un file di swap.

Quando un sistema Linux esaurisce la memoria fisica, le pagine inattive vengono spostate dalla RAM nello spazio di swap.

Swappiness è una proprietà del kernel Linux che stabilisce l'equilibrio tra lo swapping di pagine dalla memoria fisica allo spazio di swap e la rimozione di pagine dalla cache delle pagine. Definisce sostanzialmente la frequenza con cui il sistema utilizzerà lo spazio di swap.

Questo articolo spiega come modificare il valore di swapiness sui sistemi Linux.

Verificare il valore di Swappiness

Per verificare l'attuale valore di swappiness sul sistema, utilizzare il comando cat seguente:

cat /proc/sys/vm/swappiness

Il valore di swappiness  predefinito sulla maggior parte delle distribuzioni Linux è 60:

60

Mentre il valore di swappiness di 60 è appropriato per la maggior parte degli utenti, in alcuni casi potrebbe essere necessario impostare un valore più basso.

Un altro comando che è possibile utilizzare per determinare il valore di swappiness è sysctl:

sysctl vm.swappiness

Dovresti visualizzare un messaggio di output simile al seguente:

vm.swappiness = 60

Modificare il valore di Swappiness

Lo swappiness può avere un valore compreso tra 0 e 100. Un valore di 0 indica al kernel di evitare in modo aggressivo lo swap il più a lungo possibile. Un valore di 100 cambierà in modo aggressivo i processi dalla memoria fisica.

Un valore più basso farà tentare al kernel di evitare lo swap quando possibile, mentre un valore più alto significa che il kernel tenterà di utilizzare lo spazio di swap in modo più aggressivo.

L'accesso alla memoria di swap è molto più lento dell'accesso diretto alla memoria fisica. Un valore inferiore per il parametro swappiness probabilmente migliorerà le prestazioni complessive del sistema. Per un'installazione desktop regolare, si consiglia un valore di 10. Un valore di swapiness pari a 0 o 1 è consigliato per la maggior parte dei server di database.

Il valore di swappiness ottimale dipende dal carico di lavoro del sistema e dalla dimensione della memoria RAM. È necessario regolare questo parametro con piccoli incrementi per trovare un valore ottimale.

Ad esempio, per impostare il valore di swappiness su 10 in fase di esecuzione, digitare il comando seguente come root o come utente sudo:

sudo sysctl vm.swappiness=1

Per rendere persistente il parametro swappiness tra i riavvii, apri il file /etc/sysctl.conf con l'editor di testo:

sudo nano /etc/sysctl.conf

Individua il parametro vm.swappiness e modificane il valore. Se questo parametro non esiste, aggiungere la seguente riga al file:

vm.swappiness=1

Conclusione

Ti abbiamo mostrato come modificare il valore del parametro swappiness.