107 votes

Augmenter le nombre maximum de descripteurs de fichiers ouverts dans Snow Leopard ?

J'essaie de faire quelque chose qui nécessite un grand nombre de descripteurs de fichiers.

sudo ulimit -n 12288 est aussi élevé que Snow Leopard le souhaite ; au-delà de cette limite, le résultat est le suivant

/usr/bin/ulimit : ligne 4 : ulimit : open files : cannot modify limit : Invalid argument.

Je veux augmenter le nombre beaucoup plus haut, disons 100000. Est-ce possible ?

3voto

Petr Javorik Points 186

Sur OS X 10.13.6 cela fonctionne pour moi :

$ sysctl kern.maxfiles
kern.maxfiles: 12288
$ sysctl kern.maxfilesperproc
kern.maxfilesperproc: 10240
$ sudo sysctl -w kern.maxfiles=1048600
kern.maxfiles: 12288 -> 1048600
$ sudo sysctl -w kern.maxfilesperproc=1048576
kern.maxfilesperproc: 10240 -> 1048576
$ ulimit -S -n
256
$ ulimit -S -n 1048576
$ ulimit -S -n
1048576

2voto

kenorb Points 22006

Certaines limites ne peuvent pas être modifiées par ulimit car ils ne s'appliquent qu'au Shell en cours, par conséquent launchctl doit être utilisée pour modifier les limites de manière globale, par ex.

sudo launchctl limit maxfiles 100000 unlimited

Veuillez noter que l'application de ces limites dans /etc/launchd.conf (comme suggéré dans d'autres réponses) n'est plus pris en charge dans les versions récentes de macOS. Bien que vous puissiez toujours utiliser launchd.plist (voir : man launchd.plist ), par exemple par utilisateur ou à l'échelle du système plist les fichiers de configuration comme suggéré aquí , et plus .


Pour rendre ces limites persistantes, vous pouvez utiliser /etc/sysctl.conf et ajouter par exemple :

kern.maxprocperuid=1000
kern.maxproc=2000
kern.maxfilesperproc=20000
kern.maxfiles=50000

Pour que les changements prennent effet, il faut un redémarrage.

Pour voir les limites actuelles, exécutez : launchctl limit o sysctl -a | grep ^kern.max .

Voir aussi : Comment faire persister les paramètres d'ulimit dans macOS ?

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X