Estoy ejecutando El Capitan / Mac OSX 10.11.6 (15G1108) y quiero aumentar los "archivos de apertura máxima" para algunas de mis terminales / sesiones de bash. Estoy conectado con mis usuarios normales. Leí todas las guías que pude encontrar y logré aumentar algunos límites:
Como mi usuario:
$ launchctl limit maxfiles
maxfiles 200000 200000
Pero, cuando intento establecer el límite, fallo:
$ ulimit -n 8096
-bash: ulimit: open files: cannot modify limit: Operation not permitted
Lo extraño es que realmente puedo establecer el ulimit si cambio a la raíz:
$ sudo bash
$ ulimit -n 9086
Ahora, por supuesto, ejecutar todo como root es estúpido, así que estoy buscando una mejor solución. ¿Cómo puedo permitir que mi usuario también aumente su "Límite máximo de archivos"?
Lo que ya he hecho:
$ cat /etc/sysctl.conf
kern.maxfiles=65536
kern.maxfilesperproc=65536
$ cat /Library/LaunchDaemons/limit.maxfiles.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>limit.maxfiles</string>
<key>ProgramArguments</key>
<array>
<string>launchctl</string>
<string>limit</string>
<string>maxfiles</string>
<string>200000</string>
<string>200000</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>ServiceIPC</key>
<false/>
</dict>
</plist>
ulimit -n *
.Respuestas:
Habiendo tenido exactamente el mismo problema, finalmente encontré que mi secuencia de inicio de bash (
.bashrc
o similar) estaba haciendo unaulimit -n 1024
; y que causó tanto la suavidad y la difícil límite para establecer el último de los cuales impidió cualquier intento de levantarlo después, dando lugar a la"bash: ulimit: open files: cannot modify limit: Operation not permitted"
error.Por lo tanto, al eliminar ese comando se restablecieron los límites flexibles y duros a los valores predeterminados aparentes del sistema de
256
yunlimited
respectivamente. Lo último es lo que te permitiráulimit -n <whatever>
otra vez.En su caso, suponiendo que la causa es similar y su
Library/LaunchDaemons/limit.maxfiles.plist
sigue en el lugar que figura en la lista, espero queulimit -Sn
yulimit -Hn
reportará tanto para ser200000
.fuente