Swap file

Quando mi trovo a partizionare un pc/server/workstation etc. solitamente mi affido alla regola aurea di RedHat sulla dimensione dello swap:

Purtroppo però mi è capitato di trovare un vecchio server in cui  non era stata seguita questa regola e con dimensioni dello swap troppo piccole (anche se per 10 anni non ci son mai stati problemi)

8GB di ram con 2GB di swap.

Un bel giorno un processo particolarmente esoso ha consumato tutte le risorse mandando in crash la macchina, non prima di aver invocato l'oom-killer nel tentativo di "scaricarsi"

Contemporaneamente il consumo di memoria (di swap) schizzava al 100%

(come si può notare alle 2:40 PM il consumo di swap va al 95%)

Molto probabilmente, se avessi avuto uno swap più grosso, il processo incriminato avrebbe provocato gli stessi problemi, magari mettendoci qualche minuto in più: in ogni caso vale la pena aumentare lo spazio di swap a circa 10GiB.

Non volendo ripartizionare tutto mi affido a un file di swap.

Lo creo in /opt/SWAP col comando dd in questo modo

(8*1024 = 8*2^10 = 8GiB)

Verifico le dimensioni del file (pieno di zeri) che ho creato

Assegno i giusti privilegi, permettondo solo a root di leggere/scrivere

Creo il "file system swap" (in realtà non è un file system ma spazio grezzo (raw) con degli header che dicono che quello è swap), e lo attivo.

Vado ad aggiungere in fstab un record corrispondente a questo nuovo spazio swap creato, in modo che a ogni riavvio venga effettivamente usato.

Verifico che lo spazio di swap ci sia effettivamente

Volendolo eliminare basterà prima effettuare lo swapoff ./swapfile,  eliminare il record da fstab e poi cancellare fisicamente lo swapfile con rm.

Print Friendly, PDF & Email