Afficher la liste des processus qui utilisent le SWAP
Article publiée le 9 Octobre 2013
Il y a quelque jour j’ai eu un gros problème de SWAP sur une de mes machines Linux. Mon collègue a trouvé un script très utile qui permet d’afficher tous les processus utilisant le SWAP:
#!/bin/bash # Get current swap usage for all running processes # Usage: ./getswap.sh | sort -n -k 5 # Erik Ljungstrom 27/05/2011 SUM=0 OVERALL=0 for DIR in `find /proc/ -maxdepth 1 -type d | egrep "^/proc/[0-9]"` ; do PID=`echo $DIR | cut -d / -f 3` PROGNAME=`ps -p $PID -o comm --no-headers` PROGPATH=`cat /proc/$PID/cmdline` for SWAP in `grep Swap $DIR/smaps 2>/dev/null| awk '{ print $2 }'` do let SUM=$SUM+$SWAP done echo "PID=$PID - Swap used: $SUM - ($PROGNAME - $PROGPATH)" let OVERALL=$OVERALL+$SUM SUM=0 done echo "Overall swap used: $OVERALL"
Si vous voulez connaitre les processus qui SWAP le plus:
./getswap.sh | sort -n -k 5
Exemple de résultat du scripts.:
Enjoy 🙂
Ce script ne fonctionne que pour les distributions RedHat/Centos/Fedora. Une petite modif sera certainement nécessaire si vous êtes utilisateurs d’une autre distrib 😉