[gull] Nombre maximum de fichiers dans un repertoire

Marc SCHAEFER schaefer at alphanet.ch
Fri Feb 11 16:11:02 CET 2005


On Fri, Feb 11, 2005 at 11:49:30AM +0100, schaefer wrote:
> Un répertoire, sous un système de fichiers vaguement POSIX, est limité
> uniquement par le nombre de data-blocks que le répertoire peut contenir.
> En bref ce n'est `pas limité'  (ne suis pas allé vérifier dans la
> source).

(petit complément: le nombre d'objets du systèmes de fichiers est limité
par le nombre d'inodes, mais avec les disques modernes et sans modifier
le -i au mke2fs on en a souvent des millions).
 
> qu'un répertoire peut contenir vu que chaque répertoire contient une
> référence comptée (lien dur) au parent.

pour référence:
   nlink_t                 i_nlink;

unsigned short (16 bits sur plateforme ix86), donc 65534 répertoires
dans un répertoire.

> Le problème principal sera celui de la performance. Les systèmes de
> fichiers POSIX ne se comportent pas très bien avec beaucoup de fichiers

J'ajoute que si les données ne font `que' 200 MB (et probablement 200 MB
y compris les vides dus à l'organisation de la base en arbre ou
structure dérivant d'un hash) elles tiennent très certainement en
mémoire vive.  La question de la performance est donc moins importante.

> On s'en sort mieux en général en faisant cp -r . /some/other/place

et un -a si l'on veut garder les permissions (copier depuis CD: les
fichiers seront donc read-only).

J'ajoute qu'il est en général mauvais d'archiver les fichiers en format
ISO-9660 (même avec extensions RockRidge et/ou Joliet), en raison des
limites vues précédemment avec ce fs.

tar + gzip est en général une bonne solution (sous UNIX).




More information about the gull mailing list