Ich habe Ubuntu wie gewohnt ausgeführt, als plötzlich ein Dialogfeld angezeigt wurde, in dem angegeben wurde, dass ich nur noch 1,2 GB freien Speicherplatz habe. Eine Stunde zuvor hatte ich 30 GB freien Speicherplatz.
Ich habe ein paar Sachen gelöscht und den freien Speicherplatz auf 25 GB erhöht. Aber es nimmt weiter ab. Ich habe versucht, alte Protokolldateien zu entfernen und Protokolldateien und ähnliches zu kürzen, und es nimmt weiter ab!
Ich habe versucht, mit Disk Analyzer herauszufinden, woher all dieser Verlust an freiem Speicherplatz stammt, und das hat nicht funktioniert, da es alles so zeigte, wie es sein sollte. Ich habe neu gestartet und schließlich Ubuntu eine Festplattenüberprüfung durchgeführt, die irgendwie den freien Speicherplatz auf 40 GB zurückbrachte, aber es geht immer noch um 10 GB pro Tag zurück. Ich versuche weiterhin, neue Wege zu finden, um Speicherplatz freizugeben, aber es ist wie ein automatisierter Prozess, bei dem der Speicherplatz verringert wird, den ich nicht stoppen kann.
Ich weiß nicht, was ich tun soll. Wie kann ich die Ursache finden und verhindern, dass mein freier Speicherplatz abnimmt?
Hier ist die Ausgabe von sudo du -sh /var/* ~/.xsession-errors
:
13M /var/backups
204M /var/cache
112M /var/crash
4.0K /var/games
503M /var/lib
4.0K /var/local
0 /var/lock
9.5G /var/log
85M /var/mail
4.0K /var/metrics
24K /var/opt
0 /var/run
1.7M /var/spool
391M /var/tmp
11G /var/tvmobili
20K /var/www
224K /home/school/.xsession-errors
quelle
sudo du -sh /var/* ~/.xsession-errors
please anzuhängen ? (Diese beiden Orte würde ich wahrscheinlich in die Luft jagen, wenn es etwas Dummes gibt). Ansonsten bin ich bei Eliah - dies weist auf Festplattenprobleme hin. Nimm das ernst.Antworten:
Sie haben einige außer Kontrolle geratene Protokolle. Statt wie verrückt jeden Tag zu löschen, findet die schnell wachsende Datei oder Dateien, und Blick nach innen zu untersuchen , was dies verursachen kann. Möglicherweise dreht sich ein Programm in einer Schleife und protokolliert einen bestimmten Zustand. Deaktivieren Sie das Programm, deaktivieren Sie die Protokollierung, oder versuchen Sie, den Zustand zu beheben, über den es sich beschwert.
Wenn eine Datei vor Ihren Augen wächst und Sie keine Ahnung haben, welches Programm darauf schreibt, können Sie dies möglicherweise leicht herausfinden. Hier ist ein Beispiel. Wer hat
/var/log/syslog
geöffnet? Wir benutzen denfuser
Befehl:Es ist nur ein Prozess
/var/log/syslog
offen. Es ist Prozess 602. Was ist das? Lassen Sie uns nicht mitps
und befassengrep
, sondern schauen Sie sich das/proc
Dateisystem direkt an:Aha, das ist es
rsyslogd
. Wir sind nicht überrascht , dassrsyslogd
hat/var/log/syslog/
geöffnet.Diese Methode funktioniert garantiert nicht. Der Grund dafür ist, dass Programme Dateien nicht geöffnet halten müssen, um darauf schreiben zu können. Angenommen, Sie haben einen Prozess, der eine Datei öffnet, an sie anfügt und sie dann schließt. Sie werden eine etwas schwierigere Untersuchung haben. Sie könnten
fuser
viele Male laufen, bis Sie zufällig den Prozess "auf frischer Tat" abfangen. Dieser Prozess selbst könnte schnell ein- und ausgehen. Ein weiteres Problem besteht darin, dass die Datei bei mehreren Prozessen möglicherweise geöffnet ist, aber nur einer vergrößert sie. In diesem Fall können Sie die Systemaufrufe verfolgen.Hoppla! Zwei Prozesse haben es geöffnet: 1234 und 23459. Mal sehen, was sie tun:
Es tut nichts, es blockiert nur einen
select
Anruf. Strg + C, um den Trace zu unterbrechen:Überprüfen Sie den nächsten:
Hoppla, dieser schreibt ständig. Es muss der Böse sein. Wir können sogar überprüfen, ob der Dateideskriptor 5, in den der Prozess schreibt, tatsächlich die große Datei ist:
Ich vermute nicht, dass Sie ein beschädigtes Dateisystem haben, aber um eine vollständige Überprüfung zu erzwingen, müssen Sie keine DVD booten.
Überprüfen Sie zunächst die maximale Anzahl der Ladevorgänge in Ihrem Dateisystem. Identifizieren Sie Ihre Partition mit dem Befehl df. Beispiel auf einem Ubuntu-System, das ich hier habe:
Sie können sehen, dass das
/
Dateisystem angehängt ist/dev/sda1
. So/dev/sda1
ist die Speichervorrichtung der Root - Partition (und die einzigen Partition in diesem speziellen System).Schauen wir uns einige Attribute dieses Dateisystems an. Dies ist sicher, obwohl es montiert ist. Der Befehl gibt viel aus. Hier ist ein Auszug:
Hey schau, die Anzahl der Reittiere ist gleich der maximalen Anzahl der Reittiere. Beim nächsten Neustart wird das Dateisystem überprüft. Wichtig ist, dass die Anzahl der Reittiere ein positiver Wert ist. Wenn deins Null ist, ändern Sie es mit auf einen positiven Wert wie 22
tune2fs -c 22 /dev/whatever
. Null bedeutet, dass niemals eine Überprüfung erzwungen wird, unabhängig davon, wie oft die Partition gemountet wurde. Selten neu gestartete Systeme sollten hier niedrige Werte haben. Ein Server, der einmal im Jahr ausfällt, könnte wahrscheinlich bei jedem Neustart ein fsck verwenden. Sie können auch datumsbasierte Prüfintervalle festlegen.Um nun eine Überprüfung zu erzwingen, können Sie die tatsächliche Anzahl so überschreiben , dass sie größer oder gleich dem Maximum ist, und anschließend neu starten. Das ist mit der Hauptstadt gemacht
C
:tune2fs -C 1234 /dev/whatever
. Jetzt sieht es so aus, als ob die Partition 1234-mal ohne einen Haken gemountet wurde, der größer als das ein- oder zweistellige Maximum ist.quelle
Eine Festplattenüberprüfung hat einen Teil des Speicherplatzes freigegeben, was darauf hindeutet, dass dieses Problem (oder ein Teil davon) auf eine Beschädigung des Dateisystems zurückzuführen ist. In diesem Fall sollten Sie in der Lage sein, mehr Speicherplatz freizugeben, indem Sie das Dateisystem scannen und reparieren. Wenn die Beschädigung jedoch fortwährend auftritt (was möglicherweise der Fall ist oder nicht), bedeutet dies in der Regel, dass die Festplatte ausfällt. Wenn Ihre Backups (Ihrer Dokumente und anderer wichtiger Dateien, die schwer zu ersetzen sind) nicht vollständig auf dem neuesten Stand sind, sichern Sie jetzt alle wichtigen Daten!
Um die Festplatte zu überprüfen und zu reparieren , kann sie nicht gemountet werden (zumindest nicht mit Lese- / Schreibzugriff). Sie sollten das Reparaturdienstprogramm daher in einer Live-Umgebung (Live-CD / DVD oder USB) ausführen. Zuerst müssen Sie den Gerätenamen der Partition ermitteln, die Ihre Dateien enthält.
Führen Sie daher auf dem installierten System Folgendes aus:
(Stellen Sie sicher, dass der Abstand zwischen
/
und angegeben ist'
.)Du bekommst so etwas wie:
Der Text vor
on
- im Beispiel von meinem Computer -/dev/sda8
ist der vollständige Gerätename für Ihre Root-Partition (/
). Schreiben Sie das auf - Sie werden es brauchen.Starten Sie dann Ihren Computer von einer Ubuntu-Desktop-CD / DVD oder einem USB-Flash-Laufwerk, wie Sie es ursprünglich bei der Installation von Ubuntu getan haben. (Wenn es sich um ein Wubi-System handelt, das mit dem Windows-Installationsprogramm installiert wurde, teilen Sie uns dies bitte mit. Ich erwarte dies nicht, wenn Sie dies melden. In diesem Fall ist die Vorgehensweise jedoch anders.)
Wählen Sie Ubuntu ohne Installation testen (nicht Ubuntu installieren ). Wenn Sie einen funktionierenden Desktop erhalten, drücken Sie Ctrl+ Alt+ T, um ein Terminalfenster zu öffnen. Führen Sie dann diesen Befehl aus:
Stellen Sie jedoch sicher, dass Sie
/dev/sda8
den richtigen vollständigen Gerätenamen für Ihre/
Partition verwenden, wie Sie dies mit der oben beschriebenen Methode erhalten haben.Das kann eine Weile dauern. Die
c
in diesem Befehl enthaltenen Optionen führen dazu, dass die Oberfläche der Festplatte sowie das Dateisystem auf Fehler überprüft werden (und fehlerhafte Bereiche als fehlerhaft markiert werden, damit sie nicht verwendet werden). Sie können auslassencc
, wenn Sie möchten (wenn Sie dies tun, können Sie auch auslassenk
), aber ich empfehle, sie beizubehalten.Möglicherweise werden Sie aufgefordert, bestimmte Probleme
e2fsck
zu beheben , wenn Sie der Ansicht sind, dass der Versuch, sie zu beheben, mit hoher Wahrscheinlichkeit zu Datenverlusten führen kann. (Dasp
sorgt dafür, dass alle Probleme behoben werden, von denen es überzeugt ist, dass sie ohne Komplikationen behoben werden können.)Ich empfehle Ihnen dringend zu ermöglichen geneigt sein , um es zu beheben , was es will, da man nur tun dies sollte nach dafür , dass Ihre Backups sind Strom , sowieso. Wenn Sie möchten, dass auch potenziell gefährliche Fehler behoben werden, ohne dass Sie dazu aufgefordert werden, ersetzen Sie die
p
durchy
.Starten Sie danach wieder Ihr Ubuntu-System und prüfen Sie, ob Speicherplatz frei ist. Wenn dies nicht der Fall ist oder das Problem weiterhin besteht, kommentieren und bearbeiten Sie Ihre Frage, um Details bereitzustellen.
quelle
e2fsck
Befehl ist ziemlich gering, insbesondere wenn Sie nichty
auf etwas drücken , das Sie warnt, dass Sie Daten verlieren könnten. Das Ausführen dieses Befehls ist jedoch nicht der Grund, warum Sie Ihre Daten sichern müssen. Sie müssen Ihre Daten sichern, da die schnelle und kontinuierliche Abnahme des freien Speicherplatzes stark darauf hindeutet, dass Ihre Festplatte möglicherweise physisch komplett ausfällt . In diesem Fall verlieren Sie alle darauf gespeicherten Daten und können mit ziemlicher Sicherheit keine Daten wiederherstellen. Sie können auch über ein Netzwerk auf einen anderen Computer oder auf eine CD / DVD sichern.Dieses Problem wurde gelöst, es war die Firewall, die Unmengen von Protokollen und tvmobili-Codierungsdateien schrieb
quelle