Verzeichnis mit mehr als 4096 Bytes

547
musbach

Eine Verzeichnisdatei hat normalerweise 4096 Byte. Ich habe jedoch ein paar Verzeichnisdateien, die eine Größe von mehr als 4096 Byte haben, z. B. 28672, 12288, 20480, 16384 (für ext4). Ich habe diesen Artikel gelesen und es heißt: „Die anfängliche Zuordnung entspricht der Größe eines Sektors, kann aber bei Bedarf darüber hinauswachsen. Nach der Zuweisung wird kein Speicherplatz mehr freigegeben, wenn Dateien entfernt werden, um die Fragmentierung zu reduzieren. “In diesem Artikel wird nicht angegeben, wie das Problem gelöst werden kann. Das Kopieren in ein zweites Verzeichnis und das Löschen des alten Verzeichnisses kann hilfreich sein. Ich suche aber nach einem einfachen Befehl, der die Verzeichnisdateien bereinigt.


Ich habe die Antwort hier gefunden :

e2fsck -f 

Die Option -D kann weggelassen werden.

-2
Mein erster Gedanke ist, dass Sie das eigentlich nicht wollen, genau aus dem Grund, den Ihr Artikel angibt. Nichtanfälligkeit führt wahrscheinlich zu mehr Langsamkeit, als dass Ihre Verzeichnisdatei mehrere Blöcke belegt. Frank Thomas vor 6 Jahren 0
Mögliches Duplikat von [Warum ist die Größe eines Verzeichnisses in Unix immer 4096 Byte?] (Https://superuser.com/questions/142893/why-is-the-size-of-a-directory-always-4096-bytes) -in-unix) harrymc vor 6 Jahren 0
Bitte lesen Sie die Manpage von e2fsck für die Option -D. musbach vor 6 Jahren 0

1 Antwort auf die Frage

1
mtak

Je nach verwendetem Dateisystem können Sie alle Dateien in ein anderes Verzeichnis verschieben, das ursprüngliche Verzeichnis entfernen, es neu erstellen und die Dateien zurückschieben.

In der Praxis; Werdet ihr euch wirklich mit 20KB Speicherplatz beschäftigen?

Ich mache mir keine Sorgen um den Speicherplatz, aber ich mache mir Sorgen über mögliche Schäden oder Langsamkeit. musbach vor 6 Jahren 0