Problème

Les fichiers journaux contiennent l’erreur « Trop de fichiers » et CRX ne répond pas.

Solution

Augmentez la limite maximale de fichiers ouverts.

Certaines opérations CRX nécessitent que le système ait davantage de fichiers ouverts. Par exemple, l’index Lucene peut vous obliger à augmenter les paramètres de limite maximale de fichiers ouverts.

Augmenter la limite maximale de fichiers ouverts pour la session du conteneur CRX

Vérifier la limite maximale de fichiers ouverts par l’utilisateur, puis exécuter en tant que même utilisateur que le processus CRX :

ulimit -Sn ulimit -Hn

Lors de l'utilisation du script de démarrage par défaut de CRX/CQ, procéder comme suit pour augmenter la limite :

  1. Ouvrir crx-quickstart/server/start for editing
  2. Ajouter la variable CQ_MAX_OPEN_FILES au début du script :

    CQ_MAX_OPEN_FILES=8192 export CQ_MAX_OPEN_FILES

Si l’erreur « -bash: ulimit: open files: cannot modify limit: Operation not permitted » s’affiche lors du démarrage de CRX, la configuration ci-dessus ne fonctionne pas.

Il est plutôt nécessaire d’augmenter la limite dans /etc/security/limits.conf. Pour plus d’informations sur la façon de reconfigurer la limite utilisateur, voir ci-dessous.

Si vous utilisez un serveur d’applications tiers tel que JBoss ou Websphere, suivez les sections ci-dessous et vérifiez la documentation du fournisseur.

Remarque :

Si aucune des configurations de cet article ne résout le problème, consulter les fichiers ouverts à l’aide de la commande lsof -p. (-p est l’ID du processus problématique). Il se peut que votre application laisse la gestion des fichiers ouverte. Si vous constatez que la gestion est principalement maintenue par CRX et non votre application, contactez le support technique.

Augmenter les limites de l'utilisateur

Pour modifier le nombre maximum de fichiers ouverts pour les utilisateurs non autorisés, modifier le fichier /etc/security/limits.conf. Vous pouvez définir la limite par utilisateur :

crx_process_username soft nofile 8092

crx_process_username hard nofile 20000

Remarque :

Cette configuration ne prend effet que lors de la prochaine connexion de l’utilisateur.

Augmentation de la limite du système

Parfois, la limite utilisateur est suffisante, mais le système a atteint sa limite maximale de fichiers. Exécuter l’élément suivant en tant qu’utilisateur su/root :

  1. Vérifier la valeur maximale de fichier ouvert sur le système d'exploitation (si elle est inférieure à 20000, il est logique d'augmenter ce paramètre).

    cat /proc/sys/fs/file-max

  2. Ajouter la ligne suivante /etc/sysctl.conf afin d'augmenter la valeur maximale de fichiers ouverts dans le système :

    fs.file-max = 300000

  3. Exécuter la commande suivante :

    sysctl -p

  4. Vérifier que la nouvelle valeur s'affiche lors de l'exécution de cette commande :

    cat /proc/sys/fs/file-max

Remarque :

Cette configuration ne prend effet que lors de la prochaine connexion de l’utilisateur.

Informations supplémentaires

Cette erreur se produit lorsque le système, ou l’utilisateur, utilise la limite maximale de fichiers gérés.

Telechargement

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne