====== limits.conf & pam : limites d'utilisation de ressources ====== {{tag> pam debian}} ===== Définir les limites ===== Les limites hard (kernel) et soft (user, modifiable jusqu'à atteindre le niveau de kernel) peuvent être fixée sous linux dans le fichier /etc/security/limits.conf: # # julien hard nofile 4096 julien soft nofile 4096 julien hard memlock 2621440 # 2.5Go max en RAM julien soft memlock 542288 # 512Mo par default michel hard nofile 128 michel soft nofile 64 # extensible jusqu'à 128 files descriptors @developpers hard memlock 1048576 # 1Go max en RAM @developpers soft memlock 1048576 # 1Go max en RAM @developpers soft nproc 50 # max num de processus (sans les threads) Plus d'infos sur la page de man [[http://www.kernel.org/pub/linux/libs/pam/Linux-PAM-html/sag-pam_limits.html|ici]]. Il est également possible de modifier ces valeurs via l'outil **ulimit** en ligne de commande. ===== Appliquer au login ===== Ces limites sont appliquées par PAM lors du login d'un utilisateur. Il faut donc, dans pam, s'assurer qu'un appel est fait au module **pam_limits.so** lors de l'ouverture de la session. Sous Debian (lenny), dans le fichier **/etc/pam.d/common-session**, ajouter la ligne: session required pam_limits.so Fermez votre session et réouvrez la, lancer ensuite la commande **ulimit -H -a** pour voir les limites hard et **ulimit -S -a** pour voir les limites softs: $ ulimit -S -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) 24567 max locked memory (kbytes, -l) 2621440 max memory size (kbytes, -m) unlimited open files (-n) 4096 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 24567 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited $ ulimit -H -a core file size (blocks, -c) unlimited data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 24567 max locked memory (kbytes, -l) 2621440 max memory size (kbytes, -m) unlimited open files (-n) 4096 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) unlimited cpu time (seconds, -t) unlimited max user processes (-u) 24567 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited ~~DISCUSSION~~