GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Festplatte voll, du erzählst was anderes. Wie weiter untersuchen?

Lösung 1:

Ich bin gerade über diese Seite gestolpert, als ich versucht habe, ein Problem auf einem lokalen Server aufzuspüren.

In meinem Fall der df -h und du -sh um etwa 50 % der Festplattengröße nicht übereinstimmen.

Dies wurde durch Apache (httpd) verursacht, der große Protokolldateien im Speicher hält, die von der Festplatte gelöscht wurden.

Dies wurde durch Ausführen von lsof | grep "/var" | grep deleted aufgespürt wobei /var war die Partition, die ich aufräumen musste.

Die Ausgabe zeigte Zeilen wie diese:
httpd 32617 nobody 106w REG 9,4 1835222944 688166 /var/log/apache/awstats_log (deleted)

Die Situation wurde dann durch einen Neustart von Apache (service httpd restart ) und räumte 2 GB Speicherplatz frei, indem zugelassen wurde, dass die Sperren für gelöschte Dateien aufgehoben werden.

Lösung 2:

Suchen Sie nach Dateien, die sich unter Mount-Punkten befinden. Wenn Sie ein Verzeichnis (z. B. sambafs) in ein Dateisystem einhängen, das bereits eine Datei oder Verzeichnisse enthält, verlieren Sie häufig die Möglichkeit, diese Dateien zu sehen, aber sie verbrauchen immer noch Speicherplatz auf der zugrunde liegenden Festplatte. Ich hatte Dateikopien, während ich im Einzelbenutzermodus Dateien in Verzeichnisse ausgab, die ich außer im Einzelbenutzermodus nicht sehen konnte (aufgrund anderer Verzeichnissysteme, die darüber gemountet wurden).

Lösung 3:

Ich stimme der Antwort von OldTroll als wahrscheinlichster Grund für Ihr "fehlendes" Leerzeichen zu.

Unter Linux können Sie die gesamte Root-Partition (oder jede andere Partition für diese Angelegenheit) einfach an einer anderen Stelle in Ihrem Dateisystem neu einhängen, sagen Sie zum Beispiel /mnt, geben Sie einfach ein

aus
mount -o bind / /mnt

dann kannst du ein

machen
du -h /mnt

und sehen Sie, was Ihren Speicherplatz belegt.

Ps:Entschuldigung, dass ich eine neue Antwort und keinen Kommentar hinzugefügt habe, aber ich brauchte eine Formatierung, damit dieser Beitrag lesbar ist.

Lösung 4:

Siehe was df -i sagt. Es könnte sein, dass Sie keine Inodes mehr haben, was passieren kann, wenn es eine große Anzahl kleiner Dateien in diesem Dateisystem gibt, die alle verfügbaren Inodes verbrauchen, ohne den gesamten verfügbaren Speicherplatz zu verbrauchen.

Lösung 5:

In meinem Fall hatte dies mit großen gelöschten Dateien zu tun. Es war ziemlich mühsam, es zu lösen, bevor ich diese Seite fand, die mich auf den richtigen Weg brachte.

Ich habe das Problem schließlich mit lsof | grep deleted gelöst , die mir zeigte, welches Programm zwei sehr große Protokolldateien enthielt (insgesamt 5 GB meiner verfügbaren 8-GB-Root-Partition).


Linux
  1. So partitionieren Sie eine Festplatte unter Linux

  2. So finden Sie die wichtigsten Verzeichnisse und Dateien (Festplattenspeicherplatz) in Linux heraus

  3. So extrahieren Sie Tar-Dateien in ein bestimmtes oder anderes Verzeichnis in Linux

  4. Wie unterscheidet sich Ubuntu von Debian?

  5. Wie liste ich Dateien mit vollständigen Pfaden in Linux auf?

So finden Sie Dateien unter Linux

So überprüfen Sie die Größe von Dateien und Verzeichnissen unter Linux

So finden Sie Dateien in Debian

So konvertieren Sie Dateien in verschiedene Formate, ohne Software zu verwenden

So bereinigen Sie unnötige Dateien

Wie synchronisieren Sie riesige Sparse-Dateien (VM-Festplatten-Images) zwischen Computern?