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

Amazon EC2 – Festplatte voll

Nun, ich denke, es sind eine (oder mehrere) Logdateien, die zu groß geworden sind und entfernt/gesichert werden müssen. Ich würde vorschlagen, zuerst nach den großen Dateien zu suchen. Finden Sie also alle Dateien, die größer als 10 MB sind (10 MB ist eine ausreichend große Dateigröße, Sie können auf ähnliche Weise +1 MB für 1 MB wählen)

sudo find / -type f -size +10M -exec ls -lh {} \;

und jetzt können Sie feststellen, welche die Probleme verursachen, und sich entsprechend darum kümmern.

Wie für Ihren ursprünglichen du -a / | sort -n -r | head -n 10 Befehl, das wird nicht funktionieren, da es nach Größe sortiert, und so werden alle Vorfahrenverzeichnisse einer großen Datei in der Pyramide nach oben gehen, während die einzelne Datei höchstwahrscheinlich übersehen wird.

Hinweis:Es sollte ziemlich einfach sein, das Auftreten ähnlicher anderer Protokolldateien/Binärdateien am Ort der Dateien zu bemerken, die Sie so finden, also als Vorschlag, tun Sie cd in das Verzeichnis, das die Originaldatei enthält, um weitere Dateien der gleichen Art zu bereinigen. Sie können auch mit dem Befehl für Dateien mit einer Größe von mehr als 1MB iterieren als nächstes usw.


Wenn Sie keine gigantische Datei finden können, könnte das Beenden einiger Prozesse das Problem lösen (bei mir hat es funktioniert, lesen Sie die vollständige Antwort, um zu erfahren, warum)

Früher:

/dev/xvda1       8256952 7837552         0 100% /

Jetzt

/dev/xvda18256952 1062780   6774744  14% /

Grund: Wenn Sie rm <filename> tun Bei einer Datei, die derzeit von einem beliebigen Prozess geöffnet ist, wird die Datei nicht gelöscht, und der Prozess könnte immer noch in die Datei schreiben. Diese Geisterdateien können von find nicht gefunden werden Befehl und sie können nicht gelöscht werden. Verwenden Sie diesen Befehl, um herauszufinden, welche Prozesse gelöschte Dateien verwenden:

lsof +L1

Beenden Sie die Prozesse, um die Dateien freizugeben. Manchmal ist es schwierig, alle Prozesse zu beenden, die die Datei verwenden. Versuchen Sie, das System neu zu starten (ich fühle mich nicht gut, aber das ist eine schnelle Lösung, stellt sicher, dass kein Prozess die gelöschte Datei verwendet)

Lesen Sie Folgendes:https://serverfault.com/questions/232525/df-in-linux-not-showing-correct-free-space-after-file-removal/232526


Bei / , geben Sie du -hs * ein als root :

$ sudo su -
cd /; du -hs *

Sie sehen die volle Größe aller Ordner und identifizieren die größeren.


Linux
  1. Verschieben von Dateien unter Linux ohne mv

  2. So überwachen Sie den freien Speicherplatz bei Amazon EC2 mit Cloud Watch

  3. Daten in Dateisystemen verstecken?

  4. So laden Sie Dateien auf Amazon S3 hoch

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

Kopieren von Dateien unter Linux

Cp-Befehl in Linux (Dateien kopieren)

So benennen Sie eine Datei (en) in Linux um

[Bash-Tipps] Dateien umbenennen, ohne zweimal den vollständigen Namen in Linux einzugeben

Übertragen Sie Dateien mit WinSCP

So komprimieren Sie eine Datei unter Linux