Too many open files

Алексей systeamx at gmail.com
Fri Jul 17 19:45:49 MSD 2009


После того как прописал
ulimit -n 50000

в /etc/sysconfig/nginx

Вывод команды for pid in $(pgrep nginx); do cat /proc/$pid/limits;
done показывает:
Max open files            8192

А в nginx.conf имеем:
worker_rlimit_nofile  8192;

Т.е nginx стал устанавливать лимит согласно этой директиве, до этого
он не менялся видимо по тому что nginx не мог его поменять из-за
стандартного лимита в 1024 или 4096.

17 июля 2009 г. 20:38 пользователь Алексей (systeamx at gmail.com) написал:
> Заметил что лимит получилось сменить только на одном сервере - на
> остальных 4096 и не меняется никуда.
> Nginx пробовал запускать по разному не помогло. Наверное только
> прописывать ulimit -n напрямую.
>
> 17 июля 2009 г. 16:24 пользователь Artyom Nosov (chip at unixstyle.ru) написал:
>> Как альтернативный вариант, можно прописать в /etc/sysconfig/nginx (если
>> nginx устанавливался из EPEL этот файл подключается скриптом
>> /etc/init.d/nginx) строчку
>>
>> ulimit -n <необходимо_количество>
>>
>> Алексей wrote:
>>>
>>> Кажется понял в чём была проблема.
>>>
>>> В /etc/security/limits.conf не было прописано хард лимита, я думал что
>>> ранее его прописал но видимо всё-таки нет.
>>> Как только прописал сразу стало выдавать
>>> root@*** [~]# ulimit -n
>>> 50000
>>>
>>> И nginx больше не ругается.
>>>
>>> 17 июля 2009 г. 6:17 пользователь Алексей (systeamx at gmail.com) написал:
>>>>
>>>> Ещё добавлю:
>>>>
>>>> Пробовал в nginx.conf прописывать:
>>>>
>>>> user nginx;
>>>>
>>>> Но всё равно значение лимита Max open files он берёт из ограничений
>>>> root'a, поскольку мастер процесс запускается от него.
>>>> worker_rlimit_nofile ставил огромный но это никак не помогло - пока не
>>>> выполнить ulimit -n 5000 под рутом эффекта никакого нет.
>>>>
>>>> Вот только как перманентно увеличить стандартный лимит для рута -
>>>> остаётся вопрос.
>>>>
>>>> 17 июля 2009 г. 6:08 пользователь Алексей (systeamx at gmail.com) написал:
>>>>>
>>>>> C каналом всё в порядке, больше 1024 файлов из-за bytes-log'ов для
>>>>> каждого домена.
>>>>>
>>>>> Сейчас попробовал ulimit -n 5000 (под рутом), после этого nginx
>>>>> запускается без ошибок.
>>>>>
>>>>> Как можно его запустить от пользователя nginx? Нужно как-то изменять
>>>>> init скрипт насколько я понимаю и прописывать разрешения в
>>>>> /etc/sudoers.
>>>>> Обьясните подробнее пожалуйста.
>>>>>
>>>>> И ещё:
>>>>>
>>>>> root@*** [~]# for pid in $(pgrep nginx); do cat /proc/$pid/limits; done
>>>>> Limit                     Soft Limit           Hard Limit
>>>>> Units
>>>>> Max cpu time              unlimited            unlimited            ms
>>>>> Max file size             unlimited            unlimited
>>>>>  bytes
>>>>> Max data size             unlimited            unlimited
>>>>>  bytes
>>>>> Max stack size            8388608              unlimited
>>>>>  bytes
>>>>> Max core file size        0                    unlimited
>>>>>  bytes
>>>>> Max resident set          unlimited            unlimited
>>>>>  bytes
>>>>> Max processes             57344                57344
>>>>>  processes
>>>>> Max open files            5000                 5000
>>>>> files
>>>>> Max locked memory         65536                65536
>>>>>  bytes
>>>>> Max address space         unlimited            unlimited
>>>>>  bytes
>>>>> Max file locks            unlimited            unlimited
>>>>>  locks
>>>>> Max pending signals       57344                57344
>>>>>  signals
>>>>> Max msgqueue size         819200               819200
>>>>> bytes
>>>>> Max nice priority         0                    0
>>>>> Max realtime priority     0                    0
>>>>> Max realtime timeout      unlimited            unlimited            us
>>>>> Limit                     Soft Limit           Hard Limit
>>>>> Units
>>>>> Max cpu time              unlimited            unlimited            ms
>>>>> Max file size             unlimited            unlimited
>>>>>  bytes
>>>>> Max data size             unlimited            unlimited
>>>>>  bytes
>>>>> Max stack size            8388608              unlimited
>>>>>  bytes
>>>>> Max core file size        0                    unlimited
>>>>>  bytes
>>>>> Max resident set          unlimited            unlimited
>>>>>  bytes
>>>>> Max processes             57344                57344
>>>>>  processes
>>>>> Max open files            20192                20192
>>>>>  files
>>>>> Max locked memory         65536                65536
>>>>>  bytes
>>>>> Max address space         unlimited            unlimited
>>>>>  bytes
>>>>> Max file locks            unlimited            unlimited
>>>>>  locks
>>>>> Max pending signals       57344                57344
>>>>>  signals
>>>>> Max msgqueue size         819200               819200
>>>>> bytes
>>>>> Max nice priority         0                    0
>>>>> Max realtime priority     0                    0
>>>>> Max realtime timeout      unlimited            unlimited            us
>>>>> Limit                     Soft Limit           Hard Limit
>>>>> Units
>>>>> Max cpu time              unlimited            unlimited            ms
>>>>> Max file size             unlimited            unlimited
>>>>>  bytes
>>>>> Max data size             unlimited            unlimited
>>>>>  bytes
>>>>> Max stack size            8388608              unlimited
>>>>>  bytes
>>>>> Max core file size        0                    unlimited
>>>>>  bytes
>>>>> Max resident set          unlimited            unlimited
>>>>>  bytes
>>>>> Max processes             57344                57344
>>>>>  processes
>>>>> Max open files            20192                20192
>>>>>  files
>>>>> Max locked memory         65536                65536
>>>>>  bytes
>>>>> Max address space         unlimited            unlimited
>>>>>  bytes
>>>>> Max file locks            unlimited            unlimited
>>>>>  locks
>>>>> Max pending signals       57344                57344
>>>>>  signals
>>>>> Max msgqueue size         819200               819200
>>>>> bytes
>>>>> Max nice priority         0                    0
>>>>> Max realtime priority     0                    0
>>>>> Max realtime timeout      unlimited            unlimited            us
>>>>> Limit                     Soft Limit           Hard Limit
>>>>> Units
>>>>> Max cpu time              unlimited            unlimited            ms
>>>>> Max file size             unlimited            unlimited
>>>>>  bytes
>>>>> Max data size             unlimited            unlimited
>>>>>  bytes
>>>>> Max stack size            8388608              unlimited
>>>>>  bytes
>>>>> Max core file size        0                    unlimited
>>>>>  bytes
>>>>> Max resident set          unlimited            unlimited
>>>>>  bytes
>>>>> Max processes             57344                57344
>>>>>  processes
>>>>> Max open files            20192                20192
>>>>>  files
>>>>> Max locked memory         65536                65536
>>>>>  bytes
>>>>> Max address space         unlimited            unlimited
>>>>>  bytes
>>>>> Max file locks            unlimited            unlimited
>>>>>  locks
>>>>> Max pending signals       57344                57344
>>>>>  signals
>>>>> Max msgqueue size         819200               819200
>>>>> bytes
>>>>> Max nice priority         0                    0
>>>>> Max realtime priority     0                    0
>>>>> Max realtime timeout      unlimited            unlimited            us
>>>>> Limit                     Soft Limit           Hard Limit
>>>>> Units
>>>>> Max cpu time              unlimited            unlimited            ms
>>>>> Max file size             unlimited            unlimited
>>>>>  bytes
>>>>> Max data size             unlimited            unlimited
>>>>>  bytes
>>>>> Max stack size            8388608              unlimited
>>>>>  bytes
>>>>> Max core file size        0                    unlimited
>>>>>  bytes
>>>>> Max resident set          unlimited            unlimited
>>>>>  bytes
>>>>> Max processes             57344                57344
>>>>>  processes
>>>>> Max open files            20192                20192
>>>>>  files
>>>>> Max locked memory         65536                65536
>>>>>  bytes
>>>>> Max address space         unlimited            unlimited
>>>>>  bytes
>>>>> Max file locks            unlimited            unlimited
>>>>>  locks
>>>>> Max pending signals       57344                57344
>>>>>  signals
>>>>> Max msgqueue size         819200               819200
>>>>> bytes
>>>>> Max nice priority         0                    0
>>>>> Max realtime priority     0                    0
>>>>> Max realtime timeout      unlimited            unlimited            us
>>>>>
>>>>>
>>>>> 15 июля 2009 г. 12:09 пользователь Gena Makhomed (gmm at csdoc.com)
>>>>> написал:
>>>>>>
>>>>>> On Wednesday, July 15, 2009 at 9:06:10, Artyom Nosov wrote:
>>>>>>
>>>>>>>> security-уязвимостей в nginx пока еще не было обнаружено.
>>>>>>>> и согласно рейтингу http://wiki.opennet.ru/SecurityTop
>>>>>>>> nginx входит в число программ с отличной безопасностью.
>>>>>>
>>>>>> AN> Рейтинг этот служить может разве что для устрашения новобранцев.
>>>>>>
>>>>>> рейтинг этот - для того чтобы можно было выбрать более надежную
>>>>>> программу
>>>>>> из нескольких вариантов: sendmail/exim/postfix, proftpd/wuftpd/vsftpd и
>>>>>> т.п.
>>>>>>
>>>>>> AN> Как верно заметил один из его редакторов: а postfix^Wnginx
>>>>>> AN> собранный с OpenSSL тоже непременно заворачивать в chroot?
>>>>>>
>>>>>> нет. но безопасность у nginx без OpenSSL выше чем у nginx+OpenSSL.
>>>>>> PS между прочим, "chroot is not and never has been a security tool".
>>>>>>
>>>>>> --
>>>>>> Best regards,
>>>>>>  Gena
>>>>>>
>>>>>>
>>>>>>
>>
>>
>> --
>> Sincerely,
>>
>> Artyom Nosov
>> http://www.unixstyle.ru | JID chip at xmpp.ru | ICQ 128417264
>>
>>
>


More information about the nginx-ru mailing list