Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 12 sur 12
  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    mai 2003
    Messages
    312
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : mai 2003
    Messages : 312
    Points : 74
    Points
    74

    Par défaut Erreur Too many open files

    Bonsoir,

    Depuis quelques jours mon serveur plante (serveur virtuel), mon hébergeur a fait des modifications au niveau d'Apache car à priori cela venait de là, maintenant il me dise que c'est un problème de ressource et de RAM.

    Dans les logs d'apache j'ai ça :
    Code :
    [warn-phpd] mmap cache can't open /home/... - Too many open files (pid 1817)
    hier ils ont modifié cela
    Code :
    1
    2
    la limite des fichiers ouverts à 16384 au niveau du 
    /usr/sbin/apachectl .
    mais toujours le message ce soir dans les logs et ils ne veulent plus intervenir car pas de contrat d’infogérance et me propose rien d'intéressant vers une offre supérieur de 4Go de RAM

    Pouvez vous m'aidez ?
    Merci d'avance
    Bonne soirée
    Ludo

  2. #2
    Rédacteur/Modérateur
    Avatar de _Mac_
    Inscrit en
    août 2005
    Messages
    9 388
    Détails du profil
    Informations forums :
    Inscription : août 2005
    Messages : 9 388
    Points : 10 905
    Points
    10 905

    Par défaut

    Il faut plutôt regarder du côté des limites système : ulimit -n. Si cette valeur pour l'utilisateur apache est trop basse, on a ce genre de choses. Mais il ne faut pas non plus mettre une valeur trop haute justement pour laisser suffisamment de ressources libres au système.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    mai 2003
    Messages
    312
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : mai 2003
    Messages : 312
    Points : 74
    Points
    74

    Par défaut

    cette commande me retourne 1024

  4. #4
    Rédacteur/Modérateur
    Avatar de _Mac_
    Inscrit en
    août 2005
    Messages
    9 388
    Détails du profil
    Informations forums :
    Inscription : août 2005
    Messages : 9 388
    Points : 10 905
    Points
    10 905

    Par défaut

    Pour l'utilisateur défini dans la configuration Apache ?

    Il faut aussi regarder le nombre de descripteurs de fichier ouverts pour cet utilisateur :
    Code :
    lsof | grep -c ton_utilisateur_apache

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    mai 2003
    Messages
    312
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : mai 2003
    Messages : 312
    Points : 74
    Points
    74

    Par défaut

    euh...
    Code :
    1
    2
    3
    4
    lsof | grep -c www-data
    -bash: lsof: command not found
    0

  6. #6
    Rédacteur/Modérateur
    Avatar de _Mac_
    Inscrit en
    août 2005
    Messages
    9 388
    Détails du profil
    Informations forums :
    Inscription : août 2005
    Messages : 9 388
    Points : 10 905
    Points
    10 905

    Par défaut

    Il faut exécuter lsof avec l'utilisateur root.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    mai 2003
    Messages
    312
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : mai 2003
    Messages : 312
    Points : 74
    Points
    74

    Par défaut

    c'est à dire ? car je me connecte en root en SSH déjà

    Bonnes fêtes de fin d'année

  8. #8
    Rédacteur/Modérateur
    Avatar de _Mac_
    Inscrit en
    août 2005
    Messages
    9 388
    Détails du profil
    Informations forums :
    Inscription : août 2005
    Messages : 9 388
    Points : 10 905
    Points
    10 905

    Par défaut

    Dommage Ben faut trouver cette commande lsof : elle liste les fichiers ouverts sur le système (y compris les sockets) et visiblement ton erreur vient d'un trop grand nombre de fichiers ouverts par l'utilisateur Apache par rapport à la limite système. Cherche avec locate, find, ou autre. Si cette commande n'existe pas, je t'encourage fortement à l'installer ou la faire installer.

    Merci, bonnes fêtes de fin d'année à toi aussi.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    mai 2003
    Messages
    312
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : mai 2003
    Messages : 312
    Points : 74
    Points
    74

    Par défaut

    voilà installé
    il m'indique 9296 via la commande lsof | grep -c www-data cela fait beaucoup

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    mai 2003
    Messages
    312
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : mai 2003
    Messages : 312
    Points : 74
    Points
    74

    Par défaut

    11293 en ce moment

  11. #11
    Rédacteur/Modérateur
    Avatar de _Mac_
    Inscrit en
    août 2005
    Messages
    9 388
    Détails du profil
    Informations forums :
    Inscription : août 2005
    Messages : 9 388
    Points : 10 905
    Points
    10 905

    Par défaut

    En effet. A partir de maintenant, si tu t'y connais en awk, sed et tout le bazar shell c'est travailler la sortie de la commande lsof | grep www-data pour identier le ou les process système qui ouvrent ces fichiers et espérer corriger le problème.

    Ce qu'il faut que tu fasses aussi c'est compter le nombre de process système exécutés par www-data : ps -ef | grep www-data (option -c pour avoir un total et pas une liste). Il faudra mettre ce résultat en face de l'analyse précédente pour mieux comprendre l'origine du pb et aussi du trafic du site (par exemple site à trafic faible mais avec beaucoup de processus Apache = pas bon).

    Ce qu'il peut se passer c'est un code PHP (ou autre, exécuté par Apache pour opérer le site) qui ouvre trop de fichiers sans les refermer. Dans ce cas, il faut corriger le problème dans le code source.

    Autre solution mais pas forcément la meilleure : monter la valeur du ulimit pour l'utilisateur www-data. Ca doit se passer dans le fichier /etc/security/limits.conf.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    mai 2003
    Messages
    312
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : mai 2003
    Messages : 312
    Points : 74
    Points
    74

    Par défaut

    euh malheureusement je ne suis pas assez calé en linux pour cela

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •