GNU/Linux >> Tutoriels Linux >  >> Linux

Comment augmenter la limite du nombre de fichiers ouverts sous Linux

Sous Linux, vous pouvez modifier le nombre maximal de fichiers ouverts. Vous pouvez modifier ce nombre en utilisant le ulimit commande. Il vous donne la possibilité de contrôler les ressources disponibles pour le shell ou le processus démarré par celui-ci.

Lire aussi : Définir les limites des processus d'exécution Linux au niveau par utilisateur

Dans ce court didacticiel, nous vous montrerons comment vérifier votre limite actuelle de fichiers ouverts et de descriptions de fichiers, mais pour ce faire, vous devrez disposer d'un accès root à votre système.

Voyons d'abord comment déterminer le nombre maximum de descripteurs de fichiers ouverts sur votre système Linux.

Trouver la limite de fichiers ouverts Linux

La valeur est stockée dans :

# cat /proc/sys/fs/file-max

818354

Le nombre que vous verrez, indique le nombre de fichiers qu'un utilisateur peut ouvrir par session de connexion. Le résultat peut être différent selon votre système.

Par exemple sur un CentOS mon serveur, la limite a été fixée à 818354 , tandis que sur Ubuntu serveur que j'exécute à la maison, la limite par défaut était fixée à 176772 .

Si vous souhaitez voir les limites dures et souples, vous pouvez utiliser les commandes suivantes :

Vérifier la limite stricte sous Linux

# ulimit -Hn

4096

Vérifier les limites logicielles sous Linux

# ulimit -Sn

1024

Pour voir les valeurs hard et soft pour différents utilisateurs, vous pouvez simplement changer d'utilisateur avec "su" à l'utilisateur dont vous souhaitez vérifier les limites.

Par exemple :

# su marin
$ ulimit -Sn

1024
$ ulimit -Hn

4096

Comment vérifier les limites des descripteurs de fichiers à l'échelle du système sous Linux

Si vous exécutez un serveur, certaines de vos applications peuvent nécessiter des limites plus élevées pour les descripteurs de fichiers ouverts. Un bon exemple de tels sont MySQL/MariaDB ou Apache serveur Web.

Vous pouvez augmenter la limite des fichiers ouverts sous Linux en modifiant la directive du noyau fs.file-max . Pour cela, vous pouvez utiliser le sysctl utilitaire.

Sysctl est utilisé pour configurer les paramètres du noyau lors de l'exécution.

Par exemple, pour augmenter la limite de fichiers ouverts à 500 000 , vous pouvez utiliser la commande suivante en tant que root :

# sysctl -w fs.file-max=500000

Vous pouvez vérifier la valeur actuelle des fichiers ouverts avec la commande suivante :

$ cat /proc/sys/fs/file-max

Avec la commande ci-dessus, les modifications que vous avez apportées ne resteront actives que jusqu'au prochain redémarrage. Si vous souhaitez les appliquer de façon permanente, vous devrez éditer le fichier suivant :

# vi /etc/sysctl.conf

Ajoutez la ligne suivante :

fs.file-max=500000

Bien sûr, vous pouvez modifier le nombre selon vos besoins. Pour vérifier à nouveau les modifications, utilisez :

# cat /proc/sys/fs/file-max

Les utilisateurs devront se déconnecter et se reconnecter pour que les modifications prennent effet. Si vous souhaitez appliquer la limite immédiatement, vous pouvez utiliser la commande suivante :

# sysctl -p

Définir les limites d'ouverture de fichiers au niveau utilisateur sous Linux

Les exemples ci-dessus montrent comment définir des limites globales, mais vous souhaiterez peut-être appliquer des limites par utilisateur. Pour cela, en tant qu'utilisateur root, vous devrez éditer le fichier suivant :

# vi /etc/security/limits.conf

Si vous êtes un administrateur Linux, je vous suggère de vous familiariser avec ce fichier et ce que vous pouvez en faire. Lisez tous les commentaires qu'il contient car il offre une grande flexibilité en termes de gestion des ressources système en limitant les utilisateurs/groupes à différents niveaux.

Les lignes que vous devez ajouter prennent les paramètres suivants :

<domain>        <type>  <item>  <value>

Voici un exemple de définition de limites souples et strictes pour l'utilisateur marin :

## Example hard limit for max opened files
marin        hard nofile 4096
## Example soft limit for max opened files
marin        soft nofile 1024

Réflexions finales

Ce bref article vous a montré un exemple de base de la façon dont vous pouvez vérifier et configurer les limites globales et au niveau de l'utilisateur pour le nombre maximal de fichiers ouverts.

Bien que nous n'ayons fait qu'effleurer la surface, je vous encourage fortement à jeter un coup d'œil plus détaillé et à lire concernant /etc/sysctl.conf et /etc/security/limits.conf et apprendre à les utiliser. Ils vous seront d'une grande aide un jour.


Linux
  1. Comment augmenter le nombre d'inodes de disque sous Linux

  2. Comment renommer des fichiers sous Linux

  3. Comment ouvrir Appimage sous Linux

  4. Comment compresser plusieurs fichiers sous Linux

  5. Linux – Comment augmenter les Maxsymlinks ?

Comment changer la limite de fichiers ouverts sous Linux

Comment copier un grand nombre de fichiers sous Linux

Comment envoyer un ping à un numéro de port sous Linux

Comment ouvrir un PDF dans un terminal Linux

Comment compter le nombre de fichiers dans un répertoire sous Linux

Comment compresser un fichier sous Linux