
Vor einiger Zeit habe ich versehentlich Hunderttausende von Dateien in meinem Home-Verzeichnis erstellt, die ich anschließend gelöscht habe.
Seitdem ist die Ausführung von ls in meinem Home-Verzeichnis jedoch extrem langsam (das Drucken dauert Dutzende von Sekunden). Auch in anderen Verzeichnissen ist es langsam (das Drucken dauert 1 Sekunde) und die Tab-Vervollständigung ist überall langsam (ebenfalls Dutzende von Sekunden).
Was könnte das Problem sein?
Bearbeiten: Wie in den Kommentaren vorgeschlagen, die Ausgabe der
finde ~/ -maxdepth 1 | wc
ist 67 und die Ausgabe von df -h ist
/dev/sda2 74G 8.4G 62G 12% /
none 4.0K 0 4.0K 0% /sys/fs/cgroup
udev 3.9G 12K 3.9G 1% /dev
tmpfs 795M 1.1M 794M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 3.9G 4.9M 3.9G 1% /run/shm
none 100M 52K 100M 1% /run/user
/dev/sda1 825G 408G 376G 53% /home
AFS 8.6G 0 8.6G 0% /afs
/dev/sdb2 1.9T 584G 1.3T 32% /media/sj1/ResearchData1
/dev/sdc1 932G 409G 524G 44% /media/sj1/ResearchData2
Antwort1
Ich hatte das gleiche Problem und der Grund war ein Link zu einem Netzlaufwerkordner, der nicht mehr funktionierte.
Um festzustellen, ob dies bei Ihnen der Fall ist, erhalten Sie eine Liste der Links mit:
find . -maxdepth 1 -type l -ls
Versuchen Sie ls
es mit jedem einzelnen. Derjenige, der defekt ist, wird sich auch aufhängen ls
. Drücken Sie daher Strg-C, um den Vorgang abzubrechen.
Nach dem Entfernen rm
beginnt alles sofort mit dem Laden.
Antwort2
Versuchen Sie es ls -1 -f /directory
, wenn wir eine große Anzahl von Dateien im Verzeichnis haben.
-1
listet den Dateinamen jeweils einzeln pro Zeile auf.-f
deaktiviert die Sortierung.
Antwort3
Durch das Erstellen der Hunderttausenden von Dateien sind möglicherweise viele Dateisystembereiche entstanden, die nicht unbedingt mit entfernt werden, wenn die Dateien entfernt werden. Berechnen Sie einen „Fragmentierungs-Score“ mit:
sudo e4defrag -c ~/
und wenn die Punktzahl schlecht ist (sagen wir, höher als 50), verwenden Sie denselben Befehl ohne das Flag „-c“, um das Dateisystem zu defragmentieren.
Antwort4
Die meisten Dateisysteme komprimieren Verzeichnisse nach dem Löschen nicht. Was bei mir funktioniert hat, ist die Antwort auf dieseältere Frage:
- Einen neuen Ordner erstellen
- Vorhandene Dateien und Ordner in den neuen Ordner kopieren
- Löschen Sie den langsamen Ordner
- Benennen Sie den neuen Ordnernamen in den alten Ordnernamen um