Augmentation du nombre de descripteurs de fichier sur les ordinateurs Linux

Pour obtenir les meilleures performances de votre produit, augmentez le nombre de descripteurs de fichier au-delà de la limite par défaut de 1024.

Avant de commencer

Important : Avant d'utiliser votre produit, augmentez le nombre de descripteurs de fichier. Pour la plupart des produits, le nombre de descripteurs indiqué par défaut, soit 1024 par processus, n'est pas suffisant. Cette modification peut nécessiter l'intervention d'un administrateur système.

Pourquoi et quand exécuter cette tâche

Veillez à effectuer les étapes suivantes correctement. Si cette procédure n'est pas correctement effectuée, votre ordinateur ne démarrera pas.

Pour augmenter le nombre de descripteurs de fichier sur un ordinateur Linux, procédez comme suit :

Procédure

  1. Connectez-vous en tant qu'utilisateur root. Si vous ne disposez pas des droits root, vous devez les obtenir pour pouvoir continuer.
  2. Passez dans le répertoire etc.
    Avertissement : Si vous choisissez d'augmenter le nombre de descripteurs de fichier à l'étape suivante, le fichier initscript créé sur votre machine ne doit pas rester vide, sous peine d'empêcher votre ordinateur de démarrer à sa prochaine relance.
  3. Utilisez l'éditeur vi pour modifier le fichier initscript dans le répertoire etc. Si ce fichier n'existe pas, tapez vi initscript pour le créer.
  4. Sur la première ligne, tapez ulimit -n 4096. La valeur indiquée ici est sensiblement supérieure à 1024, qui est la valeur par défaut pour la plupart des ordinateurs Linux.
    Important : Une valeur trop élevée pour ulimit peut dégrader les performances globales du système.
  5. Sur la deuxième ligne, tapez eval exec "$4".
  6. Sauvegardez le fichier et fermez-le après avoir vérifié que vous avez bien exécuté les étapes 4 et 5.
  7. Facultatif : Spécifiez des limites différentes pour les utilisateurs ou les groupes en modifiant le fichier limits.conf file dans le répertoire etc/security. Ce fichier existe par défaut à la fois sous SUSE Linux Enterprise Server (SLES) version 9 et Red Hat Enterprise Linux version 4.0. Si ce fichier n'existe pas, envisagez l'utilisation d'une valeur plus modérée à l'étape 4 (2048, par exemple). L'objectif de cette opération est de maintenir dans des limites raisonnables le nombre de fichiers par processus que peuvent ouvrir la plupart des utilisateurs. Elle est d'une importance moindre si vous avez spécifié une limite relativement basse à l'étape 4. En revanche, ne pas établir de limites dans le fichier limits.conf aura de graves conséquences sur les performances de votre ordinateur si vous avez spécifié une grande valeur à l'étape 4.
    Voici à quoi ressemble un fichier limits.conf qui, dans un premier temps, restreint tous les utilisateurs, puis définit des limites différentes pour des utilisateurs désignés. Cet exemple suppose que vous avez spécifié la valeur 8192 à l'étape 4.

    *      soft nofile 1024
    *      hard nofile 2048
    root    soft nofile 4096
    root    hard nofile 8192
    util1   soft nofile 2048
    util1 hard nofile 2048

    Dans l'exemple ci-dessus, les lignes commençant par le signe * fixent d'abord les limites s'appliquant à tous les utilisateurs. Ces limites sont plus basses (plus restrictive) que celles qui suivent. Pour l'utilisateur root, le nombre de descripteurs ouverts autorisé est plus élevé et, pour l'utilisateur util1, il se situe à un niveau intermédiaire. Prenez soit de bien lire et comprendre la documentation contenue dans le fichier limits.conf avant d'effectuer des changements.

Commentaires