/etc/security/limits.conf
é lido pelo módulo PAM pam_limits.so
no login.
Mas quando o nginx é iniciado na inicialização, ele nunca passa por um procedimento de login, portanto, o PAM nunca tem a chance de fazer alterações ulimit no processo nginx ou em qualquer um de seus processos pai.
Se o seu nginx
for iniciado por um script, você deverá adicionar os comandos ulimit ao script:
ulimit -H -n 60000
ulimit -S -n 60000
Se nginx
for iniciado por um arquivo systemd
.service, use systemctl edit nginx.service
e adicione essa linha à seção [Service]
do arquivo:
LimitNOFILE=60000:60000
systemctl edit some.service
pegará automaticamente o arquivo de serviço original de [/usr]/lib/systemd
tree e colocará a versão modificada em /etc/systemd
. Todos os arquivos em /etc/systemd
substituirão todos os arquivos com o mesmo nome localizado em [/usr]/lib/systemd
tree.
Isso também fará com que a configuração do serviço seja recarregada automaticamente, assim você não precisa usar systemctl daemon-reload
manualmente.