ps aux...suele ser suficiente para ver el consumo de memoria de cada proceso.
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 10644 708 ? Ss jun30 0:05 init [2]
root 2 0.0 0.0 0 0 ? S jun30 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S jun30 0:14 [ksoftirqd/0]
root 6 0.0 0.0 0 0 ? S jun30 0:07 [migration/0]
[...]
USER: Propietario del proceso
PID: Identificador del proceso
%CPU: Relación de tiempo que el proceso usa CPU respecto al que está corriendo. Ojo, no es sobre el total del sistema.
%MEM: Relación de memoria (no swapeada) que el proceso usa respecto al total del sistema.
VSZ: Memoria virtual usada por el proceso completo.
RSS: Resident Set Size. Memoria no swapeada usada por el proceso.
TTY: Terminal asociado.
STAT: Estado del proceso.
START: Fecha de inicio del proceso.
TIME: Total de CPU usado desde que se inició.
COMMAND: Comando que lanzó el proceso.
Buceando por Internet he encontrado algunas filigranas dignas de mención y enormemente útiles para obtener la misma información:
- Ordenado por orden de consumo:
ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNS
- Human readable:
ps -eo size,pid,user,command | sort -rn | awk '{ hr[1024^2]="GB"; hr[1024]="MB"; for (x=1024^3; x>=1024; x/=1024) { if ($1>=x) { printf ("%-6.2f %s ", $1/x, hr[x]); break } } } { printf ("%-6s %-10s ", $2, $3) } { for ( x=4 ; x<=NF ; x++ ) { printf ("%s ",$x) } print ("\n") }'
- Un script python fantástico
Private + Shared = RAM used Program
80.0 KiB + 22.5 KiB = 102.5 KiB init
116.0 KiB + 12.5 KiB = 128.5 KiB minissdpd
116.0 KiB + 14.5 KiB = 130.5 KiB chrome-sandbox
148.0 KiB + 20.5 KiB = 168.5 KiB in.tftpd
[...]
101.6 MiB + 734.5 KiB = 102.3 MiB nxserver.bin (2)
111.0 MiB + 1.4 MiB = 112.5 MiB remmina
118.9 MiB + 6.1 MiB = 125.0 MiB Xorg
134.9 MiB + 21.0 MiB = 155.9 MiB chrome (5)
199.1 MiB + 3.7 MiB = 202.9 MiB thunderbird
468.7 MiB + 5.5 MiB = 474.3 MiB firefox
---------------------------------
1.7 GiB
=================================