Подтвердить что ты не робот

Увеличьте максимальные открытые файлы для Ubuntu/Upstart (initctl)

Это на сервере LTS Ubuntu 12.04.3.

Я добавил следующее в /etc/security/limits.conf(мои процессы Golang выполняются с правами root):

*      hard   nofile   50000
*      soft   nofile   50000
root   hard   nofile   50000
root   soft   nofile   50000

Я добавил следующее в /etc/pam.d/common-session

session required pam_limits.so

Я добавил в /etc/sysctl.conf следующее:

fs.file-max = 50000

Тем не менее, когда я cat/proc/{PID}/limits, я получаю:

Limit                     Soft Limit           Hard Limit           Units     
Max open files            1024                 4096                 files     

Это происходит , только когда я запускаю процесс с Upstart через sudo initctl start service_name. Если я сам запускаю процесс, он подтверждает мои настройки.

Как это исправить?

4b9b3361

Ответ 1

Это должно быть добавлено к вашему Upstart script для его работы:

limit nofile 50000 50000

"Это по дизайну, что выскочка не смотрит на /etc/security/limits.conf для системных заданий. Настройки PAM только применяется к сеансам пользователя, а не к системным службам". из https://bugs.launchpad.net/ubuntu/+source/upstart/+bug/938669

Источники:

https://github.com/saltstack/salt/issues/5323

http://bryanmarty.com/blog/2012/02/10/setting-nofile-limit-upstart/