Bertrand Lemaître a écrit :
Bonjour,
Pour des raisons de performances on me conseille de transformer les 26000
entrées sous le /home en adoptant une arborescence de type
/home/d/u/dupont pour le login dupont.
Ce quelque soit le file system (ext2, ext3,...).
Qu'en pensez vous ?
Absolument d'accord
Il m'est arrivé de programmer des utilitaires qui, en particulier
permettent de rechercher des fichiers. La méthode générale est la
suivante : on part du point de départ, on charge la liste des dossiers
et fichiers, on regarde si c'est bon sinon on parcours les
sous-répertoires, .... et ainsi de suite
Dans ton cas (26000 entrées dans un seul répertoire) ca va demander
enormément de resources ( 26000 * 254 en supposant qu'un fichier ne
représente que 254 octets en mémoire, ce qui est sous estimé = 6 Mo).
-> swap -> ralentissement de la machine
Je pense q'un ls (ou un find, ... ) procéde de la sorte.
De plus, je crois que les entrées dans la fat (ou autre nom) sont
stockées par répertoire. Ce qui fait que chaque programme qui va ouvrir
un répertoire dans /home, va potenitellement devoir parcourir 36000
entrées de la table d'allocation. C'est embettant pour samba par
exemple... Cela depend du système de fichiers utilisé.
Pour info, c'est la méthode utilisé par cégetel (je sais ce n'est pas
une référence ;) ) pour les pages perso de leurs abonnés ( avec des
serveurs sous debian ( cat /etc/apt/sources.list : deb
file:/distrib/debian dist-20040423 plateforme) ).
Je n'ai pas trouvé de conseil sous
/usr/src/linux/Documentation/filesystem
Merci pour vos conseils.