pure-ftpd - nombre maximum de fichiers par répertoire Le sujet est résolu

Demande d'aide : c'est ici.
Répondre
Avatar de l’utilisateur
JefKayak
Membre
Membre
Messages : 16
Inscription : 03 févr. 2018, 22:50
Status : Hors-ligne

Bonjour,
je fais actuellement un changement de serveur et je vois que je n'arrive pas à transférer plus de 10.000 fichiers (9.998 exactement) du répertoire files de mon forum phpbb qui en contient 62.078.

Suivant des documentations trouvées sur le net, j'ai créé un fichier
/etc/pure-ftpd/conf/LimitRecursion
dans lequel j'ai écrit:
100000 9
ce qui en principe autorise des transferts de 100.000 fichiers et 9 répertoires.

De toute évidence les limites de mes transferts de fichiers m'indiquent que mon fichier "LimitRecursion" n'est pas pris en compte.

Comment configurer mon serveur pour pourvoir transférer plus de 10.000 fichiers dans un répertoire ?

Mon serveur est configuré d'après : https://www.howtoforge.com/tutorial/per ... onfig-3-1/
Avatar de l’utilisateur
JefKayak
Membre
Membre
Messages : 16
Inscription : 03 févr. 2018, 22:50
Status : Hors-ligne

PS : erreur de ma part
j'ai regardé combien j'avais de fichiers dans mon répertoire files
find ./ -type f | wc -l
j'en ai bien 62.078, les fichiers sont bien transférés,
mais mon client FileZilla ne m'en affiche pas plus de 9.998
Comment afficher tous les fichiers dans FileZilla ?
Avatar de l’utilisateur
lol
Site Admin
Site Admin
Messages : 5054
Inscription : 04 avr. 2016, 12:11
Localisation : Madagascar
Status : Hors-ligne

Question idiote: Tu as bien redémarré pure-ftp ?
Je n'ai jamais rencontré ce problème car en général j'utilise ssh ou scp
Je compresse d'abord le dossier dans un fichier tar.gz et ensuite je copie (La copie d'une multitude de petits fichiers est parfois TRèèèèèèèèèèèèèèèèèès longue...).
Règles d'usage du forum. Signalez si vous avez posté votre question sur un autre forum. Explications ici
Debian Unstable. Mate/LXQT. Dieu, en créant l'homme, a quelque peu surestimé ses capacités.
Avatar de l’utilisateur
JefKayak
Membre
Membre
Messages : 16
Inscription : 03 févr. 2018, 22:50
Status : Hors-ligne

oups, j'ai fait une erreur,
j'ai regardé combien j'avais de fichiers dans mon répertoire files
find ./ -type f | wc -l
et j'en ai bien 62.078,
les fichiers sont bien transférés sur mon nouveau serveur. :icon_mrgreen:

Curieusement mon logiciel FileZilla n'affiche pas plus de 9.998 fichiers distants sur mon nouveau serveur (Debian 9)
sur mon ancien serveur (Debian 8), le même FileZilla affiche bien les 62.078 fichiers distants.

Comment afficher tous les fichiers présents dans le répertoire /files de mon nouveau serveur (Debian 9) avec FileZilla ?

Je note la bonne idée de compresser tous les fichiers dans tar.gz pour allez plus vite.
Avatar de l’utilisateur
lol
Site Admin
Site Admin
Messages : 5054
Inscription : 04 avr. 2016, 12:11
Localisation : Madagascar
Status : Hors-ligne

JefKayak a écrit :Comment afficher tous les fichiers présents dans le répertoire /files de mon nouveau serveur (Debian 9) avec FileZilla ?

Le problème viens bien du serveur pure-ftp, pas de filezilla.
Par défaut pure-ftp permet la lecture de 10.000 fichiers (9998 + . + ..)
Image

Si je crée, comme toi le fichier

Code : Tout sélectionner

# echo 50000 500 > /etc/pure-ftpd/conf/LimitRecursion
# service pure-ftpd-mysql restart
Et SI je quitte et ré-ouvre filezilla (Si tu ne quitte pas Filezilla la modification faite sur le serveur ne sera pas prise en compte) j'ai le bon affichage dans Filezilla:
Image

Ça fonctionne évidemment avec 65.000 fichiers...
Image


Au dessus, j'ai un "out of memory" en console sur le serveur lorsque je rafraîchi Filezilla...

Code : Tout sélectionner

Message from syslogd@dev at Feb  7 14:10:48 ...
out of memory [20453]
Règles d'usage du forum. Signalez si vous avez posté votre question sur un autre forum. Explications ici
Debian Unstable. Mate/LXQT. Dieu, en créant l'homme, a quelque peu surestimé ses capacités.
Avatar de l’utilisateur
JefKayak
Membre
Membre
Messages : 16
Inscription : 03 févr. 2018, 22:50
Status : Hors-ligne

j'avais oublié de redémarrer pure-ftp, comme tu y avais pensé (oups).

Maintenant j'ai un autre soucis, si je veux afficher le contenu de mon répertoire /files , Filezilla m'indique :

Code : Tout sélectionner

Commande :	MLSD
Réponse :	150 Accepted data connection
Réponse :	421 Out of memory
Erreur :	Impossible de récupérer le contenu du dossier
Statut :	Connexion interrompue par le serveur
Les fichiers sont bien sur le serveur (je peux le vérifier en SSH avec PuTTY), mais je n'ai pas accès au répertoire qui contient les 62.078 fichiers (25 Go) avec Filezilla en mode passif.
J'ai accès aux autres répertoires.

Y a t'il un moyen de trouver ce qui bloque Filezilla ?

Plus tard je poserai une autre question, je sais qu'avec le temps (mes forums ont une dizaine d'années) j'ai plein de fichiers dans le répertoire /files qui ne sont plus dans la table "phpbb_attachments" de la base de donnée du forum phpBB et que je pourrai les retirer sans problème. Le hic, c'est que je ne sais pas comment enlever ceux qui ne sont pas dans la table et conserver ceux qui s'y trouvent.
Dans la table "phpbb_attachments" j'ai 42.233 enregistrements de fichiers joints. Cela veut dire, si je comprends bien, que j'ai (62.078 - 42.233) = 19.845 fichiers orphelins à supprimer dans mon répertoire /files .
Avatar de l’utilisateur
lol
Site Admin
Site Admin
Messages : 5054
Inscription : 04 avr. 2016, 12:11
Localisation : Madagascar
Status : Hors-ligne

Ce n'est pas seulement Filezilla le problème...
Tu dépasse les limites, Le serveur FTP ET Filezilla râlent.

Comme déjà dit: Compresse et envoie un seul gros fichier, c'est la seule solution viable.
Des dizaines de milliers de fichiers c'est une mauvaise idée par FTP.

Tu perds ton temps.
Règles d'usage du forum. Signalez si vous avez posté votre question sur un autre forum. Explications ici
Debian Unstable. Mate/LXQT. Dieu, en créant l'homme, a quelque peu surestimé ses capacités.
Avatar de l’utilisateur
JefKayak
Membre
Membre
Messages : 16
Inscription : 03 févr. 2018, 22:50
Status : Hors-ligne

ok lol,
je suis en train de faire un ficher tar.gz pour le prochain forum (je les migre un à un).
Merci
Avatar de l’utilisateur
lol
Site Admin
Site Admin
Messages : 5054
Inscription : 04 avr. 2016, 12:11
Localisation : Madagascar
Status : Hors-ligne

Hello,
C'est raisonnable. bouger des dizaine de milliers de fichiers est beaucoup plus simple et BEAUCOUP plus rapide quand tu compresse tout dans un seul fichier.
Si pure-ftp limite à 10.000 fichiers par défaut, c'est qu'il y a une raison.

De mon côté sur un serveur moyennement puissant pure-ftp est "out of memory" au dessus de 65.000 fichiers.
Le client FTP peut lui aussi (comme tu l'as vu) être mis à mal par un trop grand nombre de fichiers, ça doit dépendre du système et du logiciel. J'imagine qu'avec un client ftp en ligne de commande tu peux afficher beaucoup plus de fichiers, mais ça reste à prouver...

Il n'y a pas de limite maximum en soit, ça dépend des systèmes (serveur et client).
Quoi qu'il en soit, tu viens de le démontrer, il vaut mieux ne pas trop pousser... le choix par défaut de pure-ftp (10.000) n'est pas un hasard.
Règles d'usage du forum. Signalez si vous avez posté votre question sur un autre forum. Explications ici
Debian Unstable. Mate/LXQT. Dieu, en créant l'homme, a quelque peu surestimé ses capacités.
Répondre