Comment augmenter la limite des fichiers ouverts dans Ubuntu & Debian

Comment augmenter la limite des fichiers ouverts dans Ubuntu & Debian

Parfois, nous avons rencontré des problèmes comme "Trop de fichiers ouverts»Sur un système Linux. Cela signifie que notre serveur a appuyé sur la limite de fichiers ouverts max. Cela se produit en raison des limites de ressources fixées par le système pour tout utilisateur ou session. Par exemple, la taille maximale des fichiers créés, la taille maximale qui peut être verrouillée dans la mémoire, temps de processeur maximum utilisé, le nombre maximum de processus autorisés, la taille maximale de la mémoire virtuelle disponible.

Fondamentalement, il existe deux types de limites:

  • UN limite dure est la limite maximale autorisée à un utilisateur ou une session, qui est définie par le superutilisateur / racine.
  • UN limite de douceur est la valeur effective actuelle pour l'utilisateur ou la session. Qui peut augmenter par l'utilisateur jusqu'à la limite dure.

Vérifiez les limites actuelles

Le ulimit La commande fournit un contrôle sur les ressources disponibles pour chaque utilisateur via un shell. Vous pouvez utiliser la commande ci-dessous pour
Pour obtenir les paramètres actuels.

ulimit -a 

Pour afficher la limite dure actuelle ou la limite souple, utilisez la commande suivante.

ulimit -sn # vérifier la limite douce Ulimit -hn # vérifiez la limite 

Augmenter la limite pour la session en cours

La plupart des systèmes d'exploitation peuvent modifier la limite de fichiers ouverts pour la session de shell actuelle à l'aide de la commande ulimit -n:

ulimit -N 200000 

Augmenter la limite par utilisateur

Vous pouvez définir la limite de fichiers ouverts par utilisateur sur un système Linux basé sur Debian. Pour définir la limite par utilisateur, modifier / etc / sécurité / limites.Fichier Conf dans un éditeur de texte.

sudo vim / etc / sécurité / limites.confli 

Ajoutez les valeurs suivantes dans le fichier:

* Soft NProc 65535 * Hard NProc 65535 * Soft Nofile 65535 * Hard Nofile 65535 Jack Soft Nproc 200000 Jack Hard Nproc 200000 Jack Soft Nofile 200000 Jack NOFILE 200000 

Ici, nous spécifions des limites distinctes qui sont 200000 pour l'utilisateur «Jack» et 65535 seront appliquées pour le reste des utilisateurs. Vous pouvez modifier ces valeurs par vos exigences.

Après cela, permettez aux pam_limits comme suivi:

sudo vim / etc / pam.D / Session commune 

Ajouter la ligne suivante:

Session requise PAM_LIMITS.donc 

Augmenter la limite à l'échelle du système

Vous pouvez également définir les limites à l'échelle du système en modifiant le fichier de configuration SYSCTL. Modifier sysctl.Fichier Conf:

vim / etc / sysctl.confli 

Ajouter la ligne suivante:

FS.fichier-max = 2097152 

Ensuite, exécutez la commande suivante pour appliquer les modifications ci-dessus:

sysctl -p 

Les modifications ci-dessus augmenteront le nombre maximum de fichiers qui peuvent rester ouverts à l'échelle du système. La limite de l'utilisateur spécifique ne peut pas être supérieure à la limite à l'échelle du système.