¿Por qué '/etc/sysctl.conf' no determina mi configuración 'kern.maxfiles'?

0

He estado teniendo un error persistente de "demasiados archivos abiertos en el sistema" en mi máquina (OSX 10.7.5).

Cuando ejecuto sysctl kern.maxfiles y sysctl kern.maxfilesperproc , ambas salidas 2048 .

Este artículo dice que la configuración predeterminada es 12,288 y 10,240 , respectivamente. Dice que puedes cambiar la configuración de forma permanente editando /etc/sysctl.conf .

He hecho eso. Los contenidos de ese archivo son ahora:

kern.maxfiles=12288
kern.maxfilesperproc=10240

Los permisos en él son -rw-r--r-- , y pertenecen a root en el grupo wheel .

Este archivo no tiene ningún efecto en lo que está haciendo mi sistema. Después del reinicio, si verifico la configuración de maxfile, no se modifican.

¿Hay algo más que controle estas configuraciones, haciendo que mis valores predeterminados sean más bajos de lo que deberían ser y anulando mis configuraciones explícitas?

¿Cómo puedo corregir esta configuración?

Actualizar

Desde entonces lo he intentado, en vano:

Límites inferiores

Estableciéndolos en 4000 y 3500 en caso de que el sistema ignore las configuraciones por encima de un cierto umbral.

Usando /etc/rc.common

Pongo lo siguiente, no en /etc/sysctl.conf , sino en /ect/rc.common :

sysctl -w kern.maxfiles=4000
sysctl -w kern.maxfilesperproc=3500

Usando el archivo de configuración de mi shell

Puse los mismos comandos que arriba en mi .zshrc , pero no funcionan sin sudo.

    
pregunta Nathan Long 14.12.2012 - 18:07

1 respuesta

2

Ver /etc/launchd.conf

Por alguna razón, tuve esto en /etc/launchd.conf :

limit maxfiles 2048

Esto aparentemente anuló mi configuración en /etc/sysctl.conf , ya sea por ser considerado más importante o por ser ejecutado más adelante en el proceso de arranque.

Después de que eliminé esto y reinicié, mi configuración de /etc/sysctl.conf entró en vigencia.

    
respondido por el Nathan Long 14.12.2012 - 21:06

Lea otras preguntas en las etiquetas