La memoria di swap è generalmente una di quelle impostazioni che si applicano all’atto del setup di un server e di cui ci si dimentica, fintanto che non ci si imbatte in un crash di sistema dovuto ad un errore OOM (out of memory). In questo caso, l’intervento sistemistico per pulire manualmente la memoria risulta essere necessario. In questa rapida guida vediamo come pulire la memoria di swap manualmente.
Liberare la memoria di swap
Per pulire la memoria di swap è sufficiente spegnere lo swap. Questa operazione fa si che quanto parcheggiato sulla memoria di swap venga spostato in RAM. Ovviamente questo significa che bisogna avere certezza del fatto che si abbia a disposizione di sufficiente spazio RAM per completare l’operazione. Per accertarsi di ciò, si consiglia di lanciare preventivamente il seguente comando
free -m
Ottenendo in output qualcosa di simile a questo, che mostra quanta memoria RAM e quanta di swap è in uso.
- total used free shared buff/cache available
Mem: 31835 4697 22998 712 4139 25979
Swap: 2047 0 2047
A questo punto è possibile spegnere la memoria di swap
swapoff -a #disattiva la memoria di swap
Attendere qualche attimo (dai 30 secondi in su) per dare tempo all’operazione di concludersi e poi riattivare lo swap con il seguente comando
swapon -a #attiva la memoria di swap