vide en ligne depuis 02.10.1998

Liste des processus qui utilisent la swap

Sur un RPI model B équipé de 256 Mo de RAM, il est fréquent d'arriver à saturation et le système se met alors à swapper faisant dégringoler les performances du serveur.
Il est donc intéressant de connaître quels processus utilisent la swap pour éventuellement faire un peut de tuning...

Avec la commande free, on se concentre sur la dernière ligne, intitulée Swap :

# free

             total       used       free     shared    buffers     cached
Mem:        234676     214456      20220          0      18372     105732
-/+ buffers/cache:      90352     144324
Swap:       102396      51324      51072

Ceci permet d'avoir une première idée de l'utilisation du swap.
Pour avoir la liste des processus qui utilisent la swap, triés par taille croissante, on peut utiliser la commande suivante :

# for file in /proc/*/status ; do awk '/Tgid|VmSwap|Name/{printf $2 " " $3}END{ print ""}' $file; done | grep kB | sort -k 3 -n

Cette commande nous donne le nom du process, son PID et la taille mémoire en swap.

.../...
awk 5749 0 kB
awk 5750 0 kB
bash 5429 0 kB
bash 5664 0 kB
grep 5665 0 kB
sort 5666 0 kB
sshd 5421 0 kB
sshd 5428 0 kB
watchdog 3195 0 kB
ifplugd 1598 64 kB
ifplugd 1574 72 kB
init 1 76 kB
logger 2879 76 kB
cron 2090 88 kB
gam_server 2400 96 kB
mysqld_safe 2470 96 kB
thd 3073 104 kB
dbus-daemon 2138 120 kB
udevd 158 120 kB
getty 3220 124 kB
getty 3221 124 kB
getty 3222 124 kB
getty 3223 124 kB
getty 3224 124 kB
getty 3225 124 kB
bluetoothd 2182 140 kB
rsyslogd 1939 168 kB
polkitd 2922 200 kB
ntpd 2966 244 kB
modem-manager 2936 308 kB
sshd 3013 328 kB
NetworkManager 2908 752 kB
console-kit-dae 3307 764 kB
fail2ban-server 2384 1648 kB
apache2 17200 2524 kB
apache2 21653 2604 kB
apache2 18193 2612 kB
apache2 24022 2616 kB
munin-node 1983 2640 kB
apache2 6335 2804 kB
apache2 5074 3080 kB
apache2 23488 3112 kB
apache2 2500 3112 kB
apache2 10985 3168 kB
apache2 1127 3256 kB
apache2 2041 4000 kB
mysqld 2878 36252 kB
.../...