Il est possible que vous ayez atteint votre limite d'utilisateurs pour le nombre de fichiers ouverts.
Je crois que chaque processus/thread consomme un ou plusieurs descripteurs de fichiers.
Par exemple, lorsque cela se produit pour votre utilisateur, la commande shell "no" fonctionnera, car les commandes shell forkent un processus à exécuter (vous voyez des erreurs comme "-bash : fork : retry : Resource temporarily unavailable")
J'ai rencontré ce problème et j'ai constaté que seul l'utilisateur actuel était incapable de générer des procs... les autres utilisateurs n'étaient pas affectés.
Pour résoudre ce problème, augmentez votre paramètre ulimit -n (nombre maximum de fichiers ouverts)... les détails suivent.
Vous pouvez voir vos limites d'utilisateur avec la commande :
ulimit -a
Augmentez votre limite maximale de fichiers avec ce qui suit :
ulimit -n 65536
Voici ce que j'ai en ce moment :
$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 256797
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 75000
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 100000
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
Pour voir toutes les limites explicites de votre système :
cat /etc/security/limits.conf
Remarque : j'utilise Oracle Linux 6.3 - les résultats peuvent varier légèrement d'une distribution à l'autre.