Один из способов решения проблемы с разрастающимися процессами apache
Итак, на сервере ни с того ни с сего начались проблемы — апач валился по MaxClients. Никаких манипуляций не производилось. Ищем виновника. Смотрим, что делают только что созданные процессы через strace :
root@xxx # strace -p 6806
Process 6806 attached - interrupt to quit
flock(226, LOCK_EXl^C
Process 6806 detached
Видим, что процесс ждет блокировки файлового дескриптора 226.
Далее, смотрим, что это за файл :
root@xxx # ls -la /proc/6806/fd/226
lrwx------ 1 root root 64 Mar 12 18:04 /proc/6806/fd/226 -> /var/www/xxx/data/mod-tmp/sess_udo951qv42mqk3s0l2ggmiqq66
Далее выведем все процессы, которые используют файл :
lsof /var/www/xxx/data/mod-tmp/sess_udo951qv42mqk3s0l2ggmiqq66
Видим, что их много.
Смотрим в один из процессов через lsof -p pid и смотрим, из какого каталога работает процесс.