web-dev-qa-db-fra.com

Comment définir définitivement la valeur ulimit?

Sur Debian Wheezy, ulimit -a donne:

open files                      (-n) 1024

J'ajoute ceci à /etc/security/limits.conf

*                hard    nofile          64000

puis redémarrez.

Et ulimit -a donne toujours un nombre maximal de fichiers ouverts de 1024. N'importe qui pourrait jeter un peu de lumière dessus?

19
Icu

Première option: Vous n'avez pas non plus réglé la limite logicielle plus haut.

Solution possible:

dans /etc/security/limits.conf, ajoutez

* soft nofile 2048

tester avec

ulimit -n 2048 

Option deux: Vous êtes connecté en tant qu'utilisateur et dans un fichier "config" (profil, bashrc, quelque chose comme ça), la limite logicielle est définie sur un valeur inférieure.

Solution possible f.e. grep pour ulimit dans votre dossier etc et/ou dossier home.

Avertissement: En fonction de la quantité de fichiers/répertoires que vous avez là-dedans, vous voudrez peut-être considérer uniquement des répertoires/fichiers spécifiques

ps: il y a beaucoup de questions similaires ici que vous voudrez peut-être lire.

Spécialement Hard vs Soft Limit

Lisez ici pour une autre solution possible qui va plus en détail Trop de fichiers ouverts

15
Dennis Nolte

Il y a un bogue dans Debian. Pour augmenter ulimit, vous devez l'ajouter dans le /etc/pam.d/common-session fichier:

session required pam_limits.so

et en /etc/security/limits.conf ajouter:

*               soft    nofile          65535
*               hard    nofile          65535

Redémarrez ensuite le système.

20
jpyzio

Dans mon cas d'Apache sur Debian 10, ce qui précède n'a pas aidé mais cela a fonctionné:

echo "Apache_ULIMIT_MAX_FILES='ulimit -n 16384'" >> /etc/Apache2/envvars
service Apache2 restart

J'ai vérifié auprès de:

cat /proc/$pid/limits

..où $pid est l'ID de processus de l'un des processus Apache.

0
Neil Stockbridge