Вернуться назад

Too many open files

Нам надо изменить параметр:

cat /proc/sys/fs/file-max

, обозначающий число одновременно открытых файлов
Текущее состояние числа открытых файлов можно узнать так:

cat /proc/sys/fs/file-nr

по порядку он выдает три значения: число открытых в данный момент файлов; число открытых, но не используемых файлов; максимальное число открытых файлов

Открываем файл:

vi /etc/sysctl.conf

имена всех возможных параметров можно узнать так: sysctl -a

Нас интересует параметр: fs.file-max

Добавляем в файл следующую строку:

fs.file-max = 999999

И вызываем для сохранения настроек:

/sbin/sysctl -p

Настраиваем ulimit

Текущее состояние настроек ulimit можно посмотреть: ulimit -a
Открываем файл:

sudo vi /etc/security/limits.conf

и добавляем с него следующую строку:

* — nofile 999999

Устанавливаем для текущего шелла ограничение: ulimit -n 999999
Перезапускаем апачу для применения настроек: /etc/init.d/httpd restart (или постфикс: /etc/init.d/postfix restart )

Заходим под юзером апача (или постфикса: su postfix -s /bin/sh) и удостоверяемся, что настройки новые:

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


igel
Дата: 25 января 2019 г. в 00:50:39

Автор: igel