Durch das Löschen einer großen Datei wird kein Speicherplatz freigegeben

11

Ich habe eine große Datei (6 GB) in meinem Home-Verzeichnis gelöscht, aber der freie Speicherplatz wird nicht erhöht.

Ich habe versucht, die Datei im Papierkorb durch Eingabe zu suchen, cd ~/.local/share/Trash/filesaber sie ist dort nicht aufgeführt. Ich habe versucht zu laufen, sudo apt-get cleanaber das Problem ist nicht gelöst. Ich habe auch versucht sudo lsof +L1zu sehen, ob ein anderer Prozess es verwendet, aber es wird auch dort nicht angezeigt.

Hat jemand irgendwelche Vorschläge?

Gaurav Mittal
quelle
Wie heißt die Datei? Kannst du rennen sudo fdisk -l?
Stellen Sie Monica wieder her - ζ--
Sie können df -lheine Liste Ihrer Partitionen einschließlich des freien Speicherplatzes anzeigen. Auch wenn die Datei ausgeblendet ist (beginnt mit einem Punkt), sollten Sie sie im Nautilus-Papierkorb (auch als Mülleimer bezeichnet) sehen.
Rosch
1
@ ObsessiveSSOℲ: Die Datei heißt output.file und befindet sich im Ausgangsverzeichnis. "fdisk -l" gibt nur die Start- und Endblöcke jeder Partition an. Ich weiß nicht, was ich mit diesen Daten anfangen soll.
Gaurav Mittal
@rosch: Datei wurde nicht versteckt (Name wurde nicht mit einem Punkt begonnen)
Gaurav Mittal
Möglicherweise versuchen Sie, Speicherplatz auf der falschen Partition freizugeben. fdiskwerde mir sagen, welche Partition die fragliche ist /
Reinstate Monica - ζ--

Antworten:

15

Die Datei wird noch von einem (oder mehreren) Prozessen verwendet. Der von der Datei belegte Speicherplatz wird nur freigegeben, wenn die Datei in keinem Prozess geöffnet ist.

Dies ist ein häufiges Problem bei Protokolldateien, die ein Dateisystem füllen, wenn der Administrator vergisst, den zugehörigen Prozess neu zu starten.

Sie können dies mit überprüfen lsof | grep DEL

Jippie
quelle
Vielen Dank für Ihre Antwort. Ich glaube nicht, dass die Datei zu diesem Zeitpunkt von einem anderen Prozess verwendet wurde. Es war eine Binärdatei, die mit "truncate -s 10M output.file" erstellt wurde, um die für die Verwendung von DC ++ erforderliche Mindestfreigabe zu erfüllen :).
Gaurav Mittal
Ist Ihre Frage dann falsch? Sie haben die Datei noch nicht gelöscht und nach dem Löschen den freien Speicherplatz gesehen?
Rosch
@rosch: Ich habe die Datei gelöscht und danach den Raum gesehen. Warum sollte ich sonst eine Frage stellen?
Gaurav Mittal
1
Nun, Ihre Frage lautet das Gegenteil. "Durch das Löschen einer Datei wird kein Speicherplatz frei". Deshalb schlage ich vor, es neu zu formulieren oder sogar zu löschen. Ich denke an Leute, die die Frage später lesen.
Rosch
1

Ich habe dies durch die folgenden Schritte gelöst

#lsof +L1

Daraufhin wird die Liste der Dateien angezeigt, die Speicher mit gelöschtem Anführungszeichen enthalten.

Notieren Sie die PID (Prozess-ID) der Datei

Töte den Prozess

#kill <pid>

Der Speicher wird durch den Prozess freigegeben

Überprüfen Sie es per Befehl

#df -h
Javeed Shakeel
quelle
rettete meinen Tag, überrascht, dass niemand diese Antwort positiv bewertet hat.
Bloodmoon
Sie können dies auch hier in diesem Link überprüfen. Ich habe dies in meiner Antwort für dasselbe Szenario ausführlicher erläutert.
Javeed Shakeel