Elevar permanentemente los límites de nofile en Ubuntu 14.04 LTS

12

Parece que no puedo entender qué es exactamente lo que se necesita para permitir que el número máximo de descriptores de archivos se genere permanentemente para todos los usuarios.

/etc/security/limits.conf:

root    hard    nofile    1500000
root    soft    nofile    1000000
root    hard    nproc     15000
root    soft    nproc     10000
*       hard    nofile    1500000
*       soft    nofile    1000000
*       hard    nproc     15000
*       soft    nproc     10000

He colocado lo siguiente en el /etc/pam.d/common-session:

session required pam_limits.so

Después de reiniciar, iniciar sesión como cualquier usuario y emitirlo ulimit -nresultó 1024.

Después de eso, intenté exigir pam_limits.soen cada archivo debajo /etc/pam.d. Reiniciado Conectado. No hay suerte.

Si emito el comando ulimit -n 1000000, compruebe, el límite se establece como se esperaba. Entonces, lo puse @reboot ulimit -n 1000000en crontab -e. Reiniciado Conectado. Sin suerte.

Lo comprobé /etc/ssh/sshd_configy PAM está habilitado.

He intentado establecer los límites en cada reinicio con:

/sbin/sysctl -w fs.file-max=1000000
/sbin/sysctl -p

Sin suerte.

Tengo un servidor que tiene una tonelada de tráfico concurrente y necesito esos límites tan altos, porque al servidor le lleva mucho tiempo borrar los descriptores de archivos. ¿Qué debo hacer para aumentar permanentemente el límite del descriptor de archivo?

w3rthl3ss
fuente

Respuestas:

11

Aumenté el número de límites de archivos para todos de esta manera (segmento desde /etc/security/limits.conf):

#        - memlock - max locked-in-memory address space (KB)
#        - nofile - max number of open files (Doug: - so Samba will not complain)
* - nofile 16384
#        - rss - max resident set size (KB)
#        - stack - max stack size (KB)

Eso fue en un servidor 12.04. Sin embargo, probé 100000 en mi servidor 14.04 y funcionó bien.

~/config/security$ ulimit -n
16384
Doug Smythies
fuente
2
Eso todavía no tuvo efecto. ¿Tuviste que colocar en session require pam_limits.soalguna parte?
w3rthl3ss
No. Acabo de editar, como sudo, y reinicié, antes de que el ulimit fuera 1024 y después de que el ulimit en mi servidor de prueba 14.04 fuera 100000.
Doug Smythies
Simplemente ajustando /etc/security/limits.confy volviendo todo lo demás a stock trabajado. ¡Gracias!
w3rthl3ss
No es necesario reiniciar, solo cierre sesión / inicie sesión.
Jacob
@ w3rthl3ss, ¿qué aspecto tiene su limit.conf? Tengo el mismo problema y propósitos de referencia
Rizwan Patel