Re: Nombre maximal de fichiers dans un répertoire
On Fri, Jan 17, 2003 at 10:45:59AM +0000, Yves Rutschle wrote:
> On Fri, Jan 17, 2003 at 10:59:45AM +0100, Eric BERTHOMIER wrote:
> > Je me demandais si une telle limite existait sous linux. Je suppose
> > qu'en plus elle dépend du système de fichiers ...
> >
> > Quelqu'un aurait il lu quelque chose à ce niveau ?
>
> Ça depend évidemment du système de fichier (si tu utilises
> FAT32 sous Linux, tu es limité à ce que FAT32 peut
> faire...).
Bien sûr.
>
> Pour ext2 (et donc ext3, je suppose): Oui il y a une limite,
> mais tu as peu de chance de l'atteindre. Par contre,
> calculer la limite est une autre histoire.
>
> Dans ext2, un fichier a une taille maximale impossible à
> dépasser. Cette taille dépend de la taille des blocs
> utilisée quand on formatte la partition. Pour la valeur
> typique de 4096 octets/bloc, on obtient une taille limite de
> fichier de 2Gb (si je me souviens bien).
C'était une limite pour les systèmes 32 bits qui a été levée
avec l'implantation de O_LARGEFILE ou quelque chose comme ça.
Maintenat tous les offsets sont 64 bits, mais ne me demandez pas
depuis quand.
>
> Un répertoire est un fichier dont la partie donnée contient
> le nom des fichiers, et le numéro d'inode de ces fichiers
> (32 bits). Donc, il faut que la somme de tout ça soit plus
> petite que 2Gb... Donc, le nombre maximum de fichier dépend
> de la longueur des noms de fichiers, et plus les noms seront
> petits et plus on pourra mettre de fichiers!
Une autre limitation est le nombre maximal d'inodes dans une partition
qui est fixé au moment du formattage. Il y a des défaults raisonnables
mais qui peuvent être atteints dans le cas d'un très grand nombre de
petits fichiers.
Le meilleur système pour des partitions avec de très nombreux petits
fichiers est Reiserfs; ext2 et ext3 ont été améliorés dans ce cas
là mais le "tail packing" de resiserfs reste sans concurrence parce
qu'il élimine presque complètement le gaspillage de place.
Gabriel.
--
Quand Bill Gates parle de système d'exploitation, il ne veut pas dire
système d'exploitation de l'ordinateur, mais de l'utilisateur, et
surtout de son portefeuille.
Reply to: