GNU/Linux >> Linux Esercitazione >  >> Linux

Come cancellare la memoria di scambio in Linux

La memoria di scambio è solitamente un tipo di affare "impostalo e dimenticalo". La maggior parte degli ambienti aziendali ha lo scambio integrato nei sistemi e queste cache di memoria non vengono manipolate a meno che non vi sia un'apparente mancanza di memoria disponibile o se un server si arresta in modo anomalo a causa dell'errore OOM killer (memoria insufficiente). Tuttavia, esiste una situazione di nicchia che può far sì che un amministratore debba cancellare manualmente lo scambio di sistema. Se questa è la situazione in cui ti trovi, sei nel posto giusto. Questo articolo è una discussione su questa situazione e sulla soluzione richiesta.

Ti senti scambiato?

Occasionalmente, un sistema utilizza un'elevata percentuale di memoria di scambio anche quando è disponibile RAM per l'uso. Il colpevole qui è lo "swappiness" del sistema. Sì, avete letto bene...swappiness. Quindi, ora che conosci il gergo, sei pronto per esplorare cosa significa. Swappiness si riferisce al parametro del kernel responsabile della quantità e della frequenza con cui il sistema sposta i dati dalla RAM alla memoria di scambio.

Il valore predefinito per swappiness è 60; tuttavia, puoi impostarlo manualmente ovunque tra 0 e 100. Valori piccoli provocano uno scambio minimo, mentre valori alti possono causare uno scambio molto aggressivo. Un valore pari a zero non provoca alcuno scambio, quindi se vuoi ridurre al minimo lo scambio al valore più basso possibile senza disattivarlo, dovresti impostarlo almeno su uno.

[ Download gratuito:cheat sheet dei comandi avanzati di Linux. ]

Se vuoi cambiare lo swappiness del tuo sistema, la procedura è molto semplice. Puoi controllare la tua attuale impostazione di swappiness eseguendo il comando seguente:

$ cat /proc/sys/vm/swappiness

Dovrebbe assomigliare a questo: 

Ora puoi vedere che il mio sistema ha una swappiness valore di 30. Per modificare il valore, utilizza quanto segue: 

$ sudo sysctl vm.swappiness=x
(where x is the swap value you wish to set)

Per verificare il valore che hai impostato, semplicemente cat the swappiness file che hai esaminato in precedenza per scoprire il valore originale. Giornata facile. Ora che comprendi i parametri sottostanti che controllano il comportamento di scambio sul nostro sistema, sei pronto per imparare come cancellare quella memoria, se dovesse verificarsi la situazione. Per la prima volta nella tua vita terminale, le cose saranno facili qui.

Per cancellare la memoria di swap sul tuo sistema, devi semplicemente disattivare lo swap. Questo sposta tutti i dati dalla memoria di scambio alla RAM. Significa anche che devi essere sicuro di avere la RAM per supportare questa operazione. Un modo semplice per farlo è eseguire 'free -m' per vedere cosa viene utilizzato in swap e nella RAM. Una volta spento, è possibile attendere un intervallo di tempo arbitrario (30 secondi circa) per consentire il completamento dell'operazione, quindi riaccendere lo switch. Questo cancella la cache della memoria di scambio e la riattiva. Ecco tutti i comandi di cui avrai bisogno!

Check space: # free -m 
Disable swap: # swapoff -a 

Wait approx 30 sec 
(use free -m to see the amount of swap used/available decrease over time)

Enable swap: # swapon -a 

Si spera che questo suggerimento rapido ti aiuti a cancellare la memoria di scambio del tuo sistema se dovessi mai aver bisogno di una soluzione del genere.

Per ulteriori informazioni sullo spazio di scambio, consulta il mio articolo che descrive le nozioni di base qui.

Vuoi provare Red Hat Enterprise Linux? Scaricalo ora gratuitamente.


Linux
  1. Come cancellare la cronologia di Bash su Linux

  2. Come cancellare la cache di memoria in Linux

  3. Come gestire una partizione di scambio in Linux

  4. Come aumentare lo spazio di swap su Linux

  5. Come abilitare la partizione di swap Linux?

Come cancellare o svuotare la cache DNS in Linux

Come cancellare la cache di memoria RAM e il buffer e lo spazio di scambio su Linux

Come disabilitare permanentemente lo scambio in Linux

Come controllare lo spazio di scambio in Linux

Come disabilitare lo scambio in Linux

Come funziona la memoria di scambio in Linux?