Abgesehen vom Cache habe ich doch den richtigen Wert angegeben. Einfach die Spalte RSS per Skript zusammenzählen [1]. Den Cache interessiert niemanden, der schrumpft sich ja von alleine klein. Leider sieht man auf den ersten Blick auch nicht, was aus dem RAM ausgelagert wurde. [2]
Ansonsten hilft auch die offizielle Doku weiter: http://linux-vserver.org/Memory_Limits
- Code
head -n1 /proc/meminfo | awk '{print $1"\t"$2/1024" MB"}' ; ps aux --no-headers|awk '{rss += $6;} END {printf "Used:\t\t""%d %s",rss/1024,"MB\n"}'
- Code
for i in `ls -1 /proc |egrep "[0-9]"`; do if [ -f /proc/$i/smaps ]; then grep "Swap" /proc/$i/smaps| awk '{X += $2} END {print "Swapped " X" kb"}'|grep -v " kb"|grep -v " 0 kb" ; grep "Swap" /proc/$i/smaps|grep -q -v "0 kB" && ls -lha /proc/$i/exe && echo ""; fi; done
Bug-Hinweis: Letzeres Skript ignoriert zur Zeit wohl noch shared libraries.