Anzahl Files pro Directory

Probleme mit Samba, NFS, FTP und Co.
Antworten
timon
Beiträge: 2
Registriert: 11.01.2002 21:32:51

Anzahl Files pro Directory

Beitrag von timon » 18.02.2002 13:40:06

Weis jemand wie viele Files ich in einem Directory unter ext2 ablegen kann ?

Ich hab mal was gehoert von +/- 16'000 , hat da jemand genauere Angaben ?

timon
Beiträge: 2
Registriert: 11.01.2002 21:32:51

Beitrag von timon » 11.03.2002 13:25:24

Die Frage hat sich zwischenzeitlich erledigt.

An dieser Stelle noch an grosses Dankeschoen an die Leute von
de.comp.os.unix.linux.moderated

Und hier sind die Antworten (falls es jemanden interessiert) ;-)

Antwort 1:

Die Größe eines Verzeichnisses (in: Zahl der Dateien) hängt
i.d.R. von der Länge der Dateinamen ab: lange Dateinamen -> wenige Dateien,
kurze Dateinamen -> viele Dateien.

Die eigentlich begrenzende Zahl ist die maximale Größe eines
Verzeichnisses in Bytes. Ein Verzeichnis kann nicht größer als 4GB
werden, da im Inode nur 32 bit für die Dateigröße vorgesehen
sind. Falls das Dateisystem 512k-Blöcke verwendet, kann ein
Verzeichnis nur 2GB groß werden.

Nimmt man an, dass ein Dateiname zwischen 8 und 12 Zeichen hat, dann
kommt man etwa auf 2Mio Dateien. In Documentation/fs/ext2.txt wird ein
Limit von 10-15Tsd Dateien angegeben, da größere Verzeichnisse auf
Grund der linearen Suche nicht mehr praktikabel sind. Ausserdem wird
dort das Limit von 32768 Unterverzeichnissen angegeben.


Antwort 2:

Eine kurze
Darstellung findet sich bei Kofler. Hier meine Erinnerung:
Inode-Dichte beträgt normalerweise 1 I-Node/4096 Byte, damit kannst Du
ausrechnen, dass Du: Kapazität der Partition / 4096 = Zahl der Dateien
in einer Partition unterbringen kannst.
Und da fällt mir auf, dass ich an der Frage vorbei schreibe.
Verzeichnis war die Frage. - Ich weiss nicht, man muesste herausfinden,
wieviel Byte ein Eintrag in der "Datei Verzeichnis" benötigt.
Ich gehe davon aus, dass die Größe des Verzeichnisses (= Datei mit Liste
der Dateinamen im Verzeichnis) bei den 32Bit Linux-Systemen nicht über
2 GByte heraus gehen darf.

Antworten