• Debian,  Korn Shell / Bash,  Linux,  RedHat,  Ubuntu

    Welcher Prozess belegt wieviel Swap?

    Wenn die Kommandos (in den Linux Varianten Debian, Ubuntu, RedHat und ähnlich)   free   cat /proc/swaps   swapon -s eine hohe Auslastung des Swap Spaces anzeigen, kommt die Frage nach dem Verbraucher des Swap hoch. Folgendes Miniskript gibt die Liste der Prozesse nach Größe des belegten Swap an. Mit der Variable THRESHOLD kann man die Liste auf die Verbraucher eingrenzen, die mehr als diesen Wert in kB an Swap belegen.   THRESHOLD=5000   for pid in `ls /proc`; do     vmswap=`awk '/VmSwa/{print $2}' /proc/${pid}/status 2>/dev/null`;     if [ ${vmswap} -gt ${THRESHOLD} ];then       pName=`ps -ef|awk '$2=="'"${pid}"'" {print $8}'`;       echo "PID ${pid}: ${vmswap} kB (${pName})";     fi;   done 2>/dev/null|sort -un -k3 Die Ausgabe sieht wie folgt aus:   PID 123857:…