Das verwirrt mich schon seit einiger Zeit. Ich verwende Ubuntu 11.04. Meine Root-Partition füllt sich und ich kann nicht herausfinden, woran das liegt. Noch seltsamer ist, dass df -h
die Ausgabe, wenn ich ausführe, Folgendes ist:
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 9.2G 8.8G 0 100% /
Wie Sie sehen, sollten etwa 400 MB frei sein, aber es Avail
wird 0 angezeigt. Was könnte die Ursache dafür sein? Ich habe sogar einige Programme deinstalliert, um Speicherplatz freizugeben, aber er füllt sich wieder. Vorschläge, wie man herausfinden kann, welche Dateien (falls vorhanden) den Speicherplatz füllen, sind ebenfalls willkommen.
Antwort1
Ein erster Versuch: Hoher Datenverkehr in einem Fehlerprotokoll. Ich denke, wenn Sie Videos herunterladen würden, wüssten Sie es. :)
sudo du -sh /var/log
- -s ist eine Zusammenfassung
- -h ist ein für Menschen lesbares Suffix (k, M, G, T).
Bei mir sind es 20M, und neben dem Log-Verzeichnis gibt es einen Cache für die Installationen. Verwenden Sie
apt-get clean
Wenn dies Ihr Problem ist.
Natürlich sollten Sie /home überprüfen, ob es sich in Ihrer Root-Partition befindet.
Wenn Sie große Dateien iterativ durchsuchen müssen, kann ich eine Reihe von Befehlen vorschlagen, die wiederholt werden können und nach dem ersten Anfangsschritt ziemlich schnell sind:
- Sie beginnen in einem verdächtigen Verzeichnis auf der obersten Ebene
- Anschließend durchsucht man alle Unterverzeichnisse und Dateien nach ihrer Größe und sortiert numerisch:
sudo du -s /var/* | sort -n
0 /var/crash
4 /var/www
44 /var/games
124 /var/run
2306 /var/tmp
18538 /var/log
251876 /var/cache
1053231 /var/lib
- Ich habe das Beispiel gekürzt, um es kurz zu halten. Wir sehen also, dass das größte Unterverzeichnis /var/lib ist, und wiederholen den Schritt für /var/lib. Jetzt ist die Suche viel schneller, weil die berechneten Ergebnisse irgendwie zwischengespeichert werden:
sudo du -s /var/lib/* | sort -n
78116 /var/lib/apt-xapian-index
104580 /var/lib/dpkg
680503 /var/lib/postgresql
und so weiter. Folgen Sie den größten Verzeichnissen, um die größeren Dateien zu finden. Sie können hier nicht -sh verwenden, da die numerische Sortierung mit k/M/G/T für Kilobyte usw. nicht funktioniert.
Antwort2
Beim Formatieren reserviert das ext2/3/4-Dateisystem einen bestimmten Prozentsatz des Speicherplatzes für die ausschließliche Verwendung durch den Root-Benutzer. Standardmäßig sind es 5 %. Dies dient dazu, dass das System auch dann weiterarbeiten und booten kann, wenn nicht privilegierte Benutzer den gesamten ihnen zur Verfügung stehenden Speicherplatz belegen.
Im Allgemeinen füllenbeliebigEs ist keine gute Idee, das Dateisystem über 95 % seiner Kapazität hinaus auszulasten, da dies zu übermäßiger Fragmentierung führt und die Leistung dadurch abnimmt – selbst nachdem Sie den Speicherplatz freigegeben haben.
Aus man mke2fs
:
-m reserved-blocks-percentage
Specify the percentage of the filesystem blocks
reserved for the super-user. This avoids fragmenta‐
tion, and allows root-owned daemons, such as
syslogd(8), to continue to function correctly after
non-privileged processes are prevented from writing
to the filesystem. The default percentage is 5%.
Wenn Sie absolut verzweifelt sind, können Sie tune2fs
diesen Wert mit ändern. man tune2fs
Weitere Informationen finden Sie unter