Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Too many open files in system  (Прочитано 6627 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн aaa4xu

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Too many open files in system
« : 22 Февраля 2013, 18:31:54 »
Ubuntu 10.04
Постоянно сыпется "Too many open files in system" при том, что сервер практически ничем не нагружен.

ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 20
file size               (blocks, -f) unlimited
pending signals                 (-i) 16382
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) unlimited
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

cat /proc/sys/fs/file-nr
2550    0       3152470
Подскажите пожалуйста, в какую сторону копать? Где подкрутить? Какая информация нужна еще для выяснения причин?

Заранее спасибо!

Оффлайн koshev

  • Старожил
  • *
  • Сообщений: 1709
  • חתול המדען
    • Просмотр профиля
Re: Too many open files in system
« Ответ #1 : 22 Февраля 2013, 19:02:20 »
сервер практически ничем не нагружен.
Т.е всё-таки чем-то он загружен.
Подскажите пожалуйста, в какую сторону копать? Где подкрутить? Какая информация нужна еще для выяснения причин?
В эту сторону.
open files                      (-n) 1024/etc/security/limits.conf
OpenWrt 19.07

Оффлайн aaa4xu

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Re: Too many open files in system
« Ответ #2 : 22 Февраля 2013, 20:14:42 »
Приношу извинения, ошибся и выполнил ulimit под sudo. Вот вывод из под пользователя:
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 20
file size               (blocks, -f) unlimited
pending signals                 (-i) 16382
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 100000
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) unlimited
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

cat /etc/security/limits.conf
*       -       nofile  100000
Да, сервер не простаивает: на нем крутятся около 20 php скриптов в бесконечном цикле - парсят информацию из api steam'а + mysql для хранения данных этих парсеров + пара сайтов с 50хостами в сутки (nginx + php-fpm)
« Последнее редактирование: 22 Февраля 2013, 20:16:31 от aaa4xu »

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: Too many open files in system
« Ответ #3 : 22 Февраля 2013, 20:34:11 »
Цитировать
Постоянно сыпется "Too many open files in system" при том, что сервер практически ничем не нагружен.
какой команда пишет?
Wars ~.o

Оффлайн Karl500

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2267
    • Просмотр профиля
Re: Too many open files in system
« Ответ #4 : 22 Февраля 2013, 20:38:59 »
lsof | wc -l

покажет число открытых файлов.

Оффлайн aaa4xu

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Re: Too many open files in system
« Ответ #5 : 22 Февраля 2013, 21:24:49 »
lsof | wc -l
От пользователя: 1905
От рута: 3731

какой команда пишет?
Не очень понял вопроса. В логах php чаще всего появляются записи подобные этим 2 строкам
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php5/20090626+lfs/xmlrpc.so' - /usr/lib/php5/20090626+lfs/xmlrpc.so: cannot open shared object file: Too many open files in system in Unknown on line 0
php: error while loading shared libraries: libkrb5support.so.0: cannot open shared object file: Error 23

Ошибки из bash'а воспроизвести сейчас не получилось, но там тоже про невозможность загрузки библиотеки из-за большого кол-ва открытых файлов
« Последнее редактирование: 22 Февраля 2013, 21:26:56 от aaa4xu »

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: Too many open files in system
« Ответ #6 : 22 Февраля 2013, 21:34:25 »
ls -l /usr/lib/php5/20090626+lfs/xmlrpc.so
кто говори? %)
« Последнее редактирование: 22 Февраля 2013, 22:02:03 от victor00000 »
Wars ~.o

Оффлайн aaa4xu

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Re: Too many open files in system
« Ответ #7 : 22 Февраля 2013, 22:38:12 »
ls -l /usr/lib/php5/20090626+lfs/xmlrpc.so
-rw-r--r-- 1 root root 71340 Sep 12 23:43 /usr/lib/php5/20090626+lfs/xmlrpc.so
Эту библиотеку привел как пример - они все отваливаются, в случайном порядке

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: Too many open files in system
« Ответ #8 : 22 Февраля 2013, 23:26:19 »
ldd libkrb5support.so.0
ldd /usr/lib/php5/20090626+lfs/xmlrpc.so
?
Wars ~.o

Оффлайн aaa4xu

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Re: Too many open files in system
« Ответ #9 : 23 Февраля 2013, 10:00:37 »
ldd libkrb5support.so.0
ldd: ./libkrb5support.so.0: No such file or directory

ldd /usr/lib/php5/20090626+lfs/xmlrpc.so
libxml2.so.2 => /usr/local/lib/libxml2.so.2 (0xb7d96000)
        libc.so.6 => /lib/libc.so.6 (0xb7c47000)
        libdl.so.2 => /lib/libdl.so.2 (0xb7c42000)
        libz.so.1 => /lib/libz.so.1 (0xb7c2d000)
        libm.so.6 => /lib/libm.so.6 (0xb7c07000)
        /lib/ld-linux.so.2 (0xb7ee6000)

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: Too many open files in system
« Ответ #10 : 23 Февраля 2013, 10:29:11 »
было пхп менять версия? небыло? Ubuntu пакета проблема виноват?
Wars ~.o

Оффлайн aaa4xu

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Re: Too many open files in system
« Ответ #11 : 23 Февраля 2013, 13:30:22 »
Нет, версию PHP не менял. Да и дело не только в нем - множество приложений отваливаются с криками на эту ошибку, просто PHP Был приведен, как первый попавшийся под руку. В особо тяжелый моменты мне не удается выполнить даже ls - он отказывается выполнятся.

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: Too many open files in system
« Ответ #12 : 23 Февраля 2013, 20:27:11 »
dmesg | grep vmalloc?
можеш груб добав вмаллок на 256.
пример у меня
L~$ dmesg | grep vmalloc
[    0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-xx.xx.xx-xx-generic root=UUID=99071b66-445c-43c8-b7a1-c2d7394605ad ro vga=0x0318 vmalloc=256M quiet splash
[    0.000000]     vmalloc : 0xef7fe000 - 0xff7fe000   ( 256 MB)
L~$
Wars ~.o

 

Страница сгенерирована за 0.103 секунд. Запросов: 25.