Devo ottenere un utilizzo della memoria in% da vmstat, ma non capisco bene alcuni dei numeri relativi alla memoria visualizzati in vmstat.
In particolare, dato un output come questo
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 139728 45396 199128 1236360 1 2 4 622 3 1 51 4 43 2 0
Qual è la quantità di memoria totale del sistema? È 'swpd' + 'free' + 'buff' + 'cache', per un totale di 1620612?
Qual è la quantità libera di memoria del sistema? È 45396, come visualizzato nella colonna "gratuita"?
Il problema è che non si sommano né si avvicinano nemmeno a ciò che è stato riportato "in alto". L'output di 'top' che ho preso nello stesso momento di 'vmstat's sopra è:
[...]
Mem: 4059616k total, 3965504k used, 94112k free, 200020k buffers
[...]
Quindi ... suppongo che ci siano numeri / opzioni nascosti in "vmstat" che non conoscevo?
Ho bisogno di usare 'vmstat' per questo scopo e non altri comandi in quanto questo è il requisito dichiarato.
Quindi idealmente, ciò che voglio ottenere da 'vmstat' è l'utilizzo della memoria%, come in:
<used_memory>/<total_memory> * 100%.
Grazie!