La memòria virtual d'un equpo és un recurs prioritari i com a tal ha de ser controlat i monitoritzat adequadament amb les eines que t'oferim. Això inclou saber veure la memòria RAM o principal utilitzada i la que està lliure, així com la pròpia memòria d'intercanvi o SWAP, Que emmagatzema totes les dades i processos que no són prioritaris i no han estat pujats a la memòria RAM o han estat extrets d'ella per introduir altres amb major prioritat. Bé, això és una explicació senzilla de com funcionaria, sense entrar en molts detalls.
Per saber controlar o, millor dit, monitoritzar aquestes memòries en el nostre sistema Linux, hi ha nombroses possibilitats. És possible fer-ho directament visualitzant amb el concatenador algun dels fitxers de la interfície /proc que proporciona Linux o utilitzar les eines que et citarem que poden utilitzar aquest tipus de fitxers o altres per obtenir aquesta informació i presentar-la d'una manera més amigable o ordenat. Fins i tot pots utilitzar ordres com a top i altres referits a processos que aporten certes dades sobre la memòria…Primer anem amb el ordre free, Amb ell pots veure la memòria RAM i SWAP usada i lliure, buffer, etc. Per a això pots emprar també l'opció -h que mostra les unitats d'una forma una mica més comprensible al meu entendre:
free -h
Amb la comanda intercanviar podem activar particions o fitxers d'intercanvi, però amb l'opció -s també veure la capacitat d'aquesta:
swapon -s
seguim amb vmstat que, com el seu propi nom indica, mostra l'estat de la memòria virtual:
vmstat
Una altra opció seria memstat, Similar a l'anterior:
memstat
Anem ara amb els fitxers de / proc que podem consultar per obtenir informació de la memòria:
cat /proc/swaps
cat /proc/meminfo
I finalment farem ús d'un altre ordre, que simplement fa servir les taules DMI per obtenir informació de l'maquinari, en aquest cas filtrant només la relativa a la memòria usant aquesta opció:
sudo dmidecode --type memory
Interessant article.
La gràcia és combinar-ho amb watch per monitoritzar cada varis segons (per defecte 2 però es pot ajustar amb «-n»).
Exemples:
watch free -h
watch -n 1 free -h
Una altra utilitat que ens ofereix Bash és executar ordres alhora amb els operadors «&&» i «;»
Exemple:
free -h; cat / proc / swaps
També es pot filtrar mitjançant grep i l'ús d'un pipe (caràcter «|»).
Exemple:
free -h | grep 'Memòria'
O fins i tot afegir el text que vulguem mitjançant printf
printf 'La meva comanda: \ n'; free -h
I molt més 🙂