Удобная утилита, написанная на Python, для проверки занятой памяти процессами.
Суммирует используемую память всех экземпляров каждого процесса программы и выводит общее значение.
Установка в CentOS:
# yum -y install ps_mem
Или через:
# pip install ps_mem
Опции:
-w N — выполнять через N секунд;
-p — выводить информацию только по указанном PID (или списку PID через запятую);
-s — выводить команду полностью, а не только имя процесса.
Будучи вызванной без опций — выведет такой список:
# ps_mem
Private + Shared = RAM used Program
4.0 KiB + 18.5 KiB = 22.5 KiB mysqld_safe
4.0 KiB + 22.0 KiB = 26.0 KiB config
12.0 KiB + 23.0 KiB = 35.0 KiB log
4.0 KiB + 34.0 KiB = 38.0 KiB python
16.0 KiB + 22.0 KiB = 38.0 KiB anvil
0.0 KiB + 56.5 KiB = 56.5 KiB udevd (3)
8.0 KiB + 60.0 KiB = 68.0 KiB mysql
24.0 KiB + 63.0 KiB = 87.0 KiB mingetty (6)
76.0 KiB + 27.5 KiB = 103.5 KiB dovecot
104.0 KiB + 28.0 KiB = 132.0 KiB init
12.0 KiB + 144.0 KiB = 156.0 KiB pop3-login (3)
12.0 KiB + 144.0 KiB = 156.0 KiB imap-login (3)
132.0 KiB + 28.5 KiB = 160.5 KiB crond
164.0 KiB + 27.5 KiB = 191.5 KiB auditd
156.0 KiB + 94.0 KiB = 250.0 KiB exim
364.0 KiB + 37.5 KiB = 401.5 KiB rsyslogd
24.0 KiB + 455.0 KiB = 479.0 KiB sudo (5)
324.0 KiB + 197.0 KiB = 521.0 KiB auth (2)
196.0 KiB + 433.0 KiB = 629.0 KiB sshd (3)
252.0 KiB + 595.0 KiB = 847.0 KiB zabbix_agentd (6)
1.1 MiB + 317.0 KiB = 1.4 MiB nginx (2)
1.5 MiB + 306.0 KiB = 1.8 MiB bash (13)
2.9 MiB + 257.0 KiB = 3.2 MiB htop (2)
4.1 MiB + 683.5 KiB = 4.8 MiB imap (10)
4.4 MiB + 3.0 MiB = 7.4 MiB httpd (12)
13.6 MiB + 119.5 KiB = 13.7 MiB screen (2)
39.0 MiB + 5.4 MiB = 44.4 MiB spamd (3)
50.3 MiB + 98.5 KiB = 50.4 MiB mysqld
536.0 MiB + 7.8 MiB = 543.9 MiB php-cgi (25)
---------------------------------
675.4 MiB
=================================
Вот и «виновник» срабатывания OOM Killer-а этой ночью:
536.0 MiB + 7.8 MiB = 543.9 MiB php-cgi (25)




