Vous pouvez recevoir un message sur le système Linux comme "Trop de fichiers ouverts". Cela signifie que le serveur a atteint la limite du nombre maximal de fichiers ouverts.
Sous Linux, il existe deux types de limites
(A) Limite stricte :limite maximale autorisée à un utilisateur qui peut être définie par le superutilisateur/root.
(B) Limite souple :Limite actuelle autorisée à un utilisateur qui peut être augmentée par l'utilisateur jusqu'à la limite stricte.
Vérifiez les limites actuelles :
Vous pouvez vérifier la limite actuellement autorisée pour un utilisateur avec la commande ulimit. Voici la commande pour vérifier la limite matérielle et logicielle.
ulimit -Sn # Check soft limit
ulimit -Hn # Check hard limit
Augmenter la limite pour la session en cours :
Si vous souhaitez augmenter la limite d'une session, vous pouvez utiliser la commande ci-dessous.
ulimit -n 250000
Augmenter la limite par utilisateur :
- Nous pouvons fournir une limite par utilisateur pour un fichier ouvert. Modifiez le fichier limits.conf à l'aide de la commande ci-dessous.
sudo nano /etc/security/limits.conf
- modifiez la valeur de votre utilisateur selon vos besoins et enregistrez les fichiers.
- Une fois que vous avez terminé la modification des limites, activez pam_limits à l'aide de la commande ci-dessous.
sudo nano /etc/pam.d/common-session
- Ajoutez la ligne suivante :
session required pam_limits.so
Augmenter la limite à l'échelle du système :
L'augmentation de la limite à l'échelle du système vous permettra d'ouvrir des fichiers à l'échelle du système. Veuillez noter qu'une limite d'utilisateurs spécifique ne peut pas être supérieure à la limite à l'échelle du système.
- Nous pouvons également augmenter la limite à l'échelle du système. Pour ce faire, éditez le fichier de configuration sysctl.
# nano /etc/sysctl.conf
- Maintenant, ajoutez la ligne ci-dessous
# fs.file-max = 3000000
- Exécutez la commande ci-dessous pour enregistrer les modifications.
# sysctl -p