[Linux-bruxelles] Drupal ou PHP ? failed to open dir: Too many open files [SOLVED]

Didier MISSON didier.misson at total.com
Lun 6 Juil 13:09:07 CEST 2009


linux-bruxelles-bounces at lists.bxlug.be wrote on 06/07/2009 12:00:28:

> Bonjour à tous,

Bonjour Sébastien,

> Le 6 juillet 2009 09:29, Didier MISSON<didier.misson at total.com> a écrit 
:
> >
> > linux-bruxelles-bounces at lists.bxlug.be wrote on 06/07/2009 00:55:41:
> >
> >> Bonsoir,
> >>
> >> Sur un serveur Debian, des sites en Drupal.
> >> J'obtiens de temps en temps ce message d'erreur :
> >>
> >> http://twitpic.com/9ften
> >>
> >> # warning:
> >> 
opendir(sites/all/modules/cck/modules/nodereference/panels/relationships)
> >> [function.opendir]: failed to open dir: Too many open files in
> >> /home/didier/www/drupal/includes/file.inc on line 888.
> >> # warning:
> >> 
opendir(sites/all/modules/cck/modules/userreference/panels/relationships)
> >> [function.opendir]: failed to open dir: Too many open files in
> >> /home/didier/www/drupal/includes/file.inc on line 888.
> >> # warning:
> >> 
opendir(sites/all/modules/cck/modules/fieldgroup/panels/content_types)
> >> [function.opendir]: failed to open dir: Too many open files in
> >> /home/didier/www/drupal/includes/file.inc on line 888.
> >> # warning:
> >> 
opendir(sites/all/modules/dfgallery/dfgallery/resources/themes/standard)
> >> [function.opendir]: failed to open dir: Too many open files in
> >> /home/didier/www/drupal/includes/file.inc on line 888.
> >> # warning:
> >> opendir(sites/all/modules/filefield/icons/protocons/16x16/mimetypes)
> >> [function.opendir]: failed to open dir: Too many open files in
> >> /home/didier/www/drupal/includes/file.inc on line 888.
> 
> Je suis prêt à parier que lorsque cela se produit, une boucle
> s'exécute pour ouvrir une série de fichiers et que la boucle ne se
> termine pas. J'ai déjà rencontré ce genre de problème dans un de mes
> scripts.

c'était en effet une des possibilités :
- soit une boucle qui ouvre sans arret des fichiers, ou qui parcours une 
grande arborescence de dossiers
- soit un script qui ne ferme pas ses fichiers, et jour après jour le 
nombre de fichier augmente...


 
> Par contre, je ne connais pas Drupal (de nom, si, quand même) et je ne
> peux pas te dire si c'est effectivement cela qui se passe ni te dire
> comment résoudre ton problème.
> 
> A bientôt.
> 
> --------------------------------
> Sebastien Adam
> http://www.sebastienadam.be/

Le problème ne semble pas venir de Drupal
(enfin... je suppose... l'erreur que tu cites est toujours possible)

C'est une problème avec ulimit, càd le nombre maximum de fichiers ouverts 
PAR utilisateur !
On a ajouté plusieurs nouveaux sites, et (voir autre mail) j'ai appliqué 
des redirections pour forcer des "www." sur plusieurs sites, dans la 
configuration d'Apache2.
A chaque fois, cela fait des fichiers ouverts en plus
(nous splittons les logs par sites, ça fait 2 fichiers de log par site, 
etc)
et finalement la limite des 1024 fichiers par utilisateurs est atteinte 
pour www-data ...

J'ai trouvé comment augmenter le nombre de fichiers ouverts pour www-data 
:

http://didier.misson.net/blog/2009/07/06/failed-to-open-dir-too-many-open-files/

$ vi /etc/security/limits.conf

#<domain> <type> <item> <value>
#
www-data soft nofile 1600
www-data hard nofile 65535


et restart Apache2.

(maintenant, pour vérifier si tu n'as pas quand même raison... on verra si 
le problème revient dans quelques jours ou semaines... alors ce serait 
quand même une erreur dans un script)

;-)


-- 
Didier
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: </pipermail/linux-bruxelles/attachments/20090706/19024a78/attachment-0002.html>


Plus d'informations sur la liste de diffusion Linux-bruxelles