miércoles, 19 de agosto de 2015

El problema del “no fork available”

La gestión de memoria de OSX era buena. Como buen Unix que es, se lleva pensando y programando desde 1978, con lo que, si algo funciona bien, lo mejor es que no lo toques, sobre todo cuando es eficiente y hace su trabajo estupendamente. Pero llego Apple y su mania de “tocar” a ver si así se puede llevar el gato a su agua, mover el problema a su terreno, crear “su estándar” y que, a ser posible sea incompatible con el resto.Por suerte, esto se puede cambiar, aunque, desde Yosemite, no se puede hacer desde el propio comando ulimit. Si intentamos cambiar los parámetros desde el ulimit, aunque parece que funciona, veremos que no varian (curiosamente). Apple reinventando la rueda y la forma para no permitir al usuario que toque y modifique su propio sistema, gra-cias.
Curiosamente, si nos aburrimos y ponemos el siguiente comando:
launchctl limit
Veremos que… oh sorpresa, nos aparece lo mismo pero desde otra perspectiva: 
Es decir, Apple ha pasado del demonio de toda la vida que siempre ha funcionado bien y va como la seda para pasar a su propio sistema de demonios (de ahí el launchctl). Lo que nos da un olor a donde hay que tocar para modificarlo ya que el fichero del /etc/limit.conf pues curiosamente, ya no existe y no vale… ni siquiera si lo ponemos en /private/etc nuevo sitio para las configuraciones.
Pero, si vamos a la carpeta /Library/LaunchDaemons nos encontraremos con un fichero llamado limit.maxfiles.plist que justamente es un XML de configuración el cual ejecuta el demonio del launchctl y que… sorpresa sorpresa, los números corresponden a lo que el ulimit y el limit nos escupen. Yo, desde aquí, os recomiendo dejar un valor de 524288, quedando el fichero tal que así. 

No hay comentarios: