4 votos

Cambio de ulimit en ubuntu 12.04 nunca funciona

Estoy trabajando con hadoop y la necesidad de cambiar el número de archivos abiertos ulimit -n. He visto preguntas similares en stackoverflow y en otros lugares y he probado de todo en esas respuestas, pero todavía no funciona. Estoy trabajando con ubuntu 12.04 LTS. Aquí es lo que he hecho:

límites de cambio en /etc/security/limits.conf, me han puesto en la configuración de * e root. También he cambiado los límites a algún número como 10000 y unlimited.

* soft nofile 1513687
* hard nofile 1513687
root soft nofile 1513687
root hard nofile 1513687

También he tratado de configuración anterior con - en lugar de soft y hard. Después de estos cambios, he hecho cambios a /etc/pam.d/ ficheros tales como:

common-session 
common-session-noninterative
login
cron
sshd
su
sudo

he añadido session required pam_limits.so al comienzo de cada archivo. Hice un reinicio de la caja en cuestión y los ajustes no tienen efecto.

También he encontrado que hay archivos dentro de /etc/security/limits.d/ directorio de los usuarios hbase mapred y hdfs. He intentado cambiar los límites de estos archivos individuales, así fue en vano.

He intentado poner ulimit -S -n unlimited dentro /etc/profile como bueno. No trabajo.

Por último, he intentado poner limit nofile unlimited unlimited dentro /etc/init.d/hadoop* archivos como primera línea. No trabajo.

Una cosa interesante a pesar de que es, no tengo hbase instalado en la caja, pero tengo un hbase.conf archivo /etc/security/limits.d/ directorio. La configuración de este archivo se reflejan con ulimit -n. Pero la configuración de hdfs.conf y mapred.conf no se reflejan. Lo que sugiere que algo es sobrescribir la configuración de hdfs y mapred.

Supongo que he intentado todo lo que la gente sugerido en varios foros, es que hay algo más que puede haber perdido o se hace incorrectamente?

Estoy usando CDH 4.4.0 como mi hadoop distribución.

7voto

Yo era capaz de cambiar mi ulimit tiempo real de prioridad y memlock haciendo esto:

Abrir /etc/security/limits.conf y añadir estas líneas (reemplazar 'tyler' con su Ubuntu nombre de usuario)

  • tyler duro rtprio 95
  • tyler suave rtprio 95
  • tyler duro memlock ilimitado
  • tyler suave memlock ilimitado

Abrir /etc/pam.d/ub y asegúrese de que la siguiente línea está presente, y no comentarios:

session    required   pam_limits.so

Después de eso, yo sólo tenía que reiniciar mi equipo, a continuación, podría utilizar este comando de terminal para comprobar mi ulimit:

ulimit -r -l

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: