Linux-Festplattennutzung und Festplattengröße stimmen nicht überein [Fedora 11]

540
William Carter Baller

Ich habe ein Problem mit einer Xen-VM, bei dem (als Root ausgeführt) df und baobab übereinstimmen, dass 94% meiner Festplatte verwendet werden (25 G von 28 G), aber du zählt nur einen Bruchteil der gesamten Festplattenauslastung (3,3 G).

Der Server verfügt über eine einfache LVM-Konfiguration: Eine 28G-Partition, die an / montiert ist. lvdisplay und vgdisplay zeigen beide, dass das gesamte Volume abgerechnet wird.

Wie vermisse ich fast 22G Platz?

df Output ========= Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/vg_dns-lv_root 29241444 25924244 1831788 94% /  df -h Output ============ Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_dns-lv_root 28G 25G 1.8G 94% /  `du --max-depth=1 -h` Output ============================ 96K ./tmp 128K ./home 23M ./root ... 94M ./etc 4.0K ./.pulse 3.4G . 
1
Bitte geben Sie die Ausgabe der Befehle selbst an. Wir müssen "du" und "df -h" sehen. Sehen Sie sich auch folgende Fragen und Antworten an: [Warum gibt es so viele verschiedene Möglichkeiten, die Festplattennutzung zu messen?] (Http://unix.stackexchange.com/q/120311) terdon vor 10 Jahren 0

3 Antworten auf die Frage

2
Laszlo Valko

Wenn Sie eine Datei löschen (deren Verknüpfung aufgehoben wird), die von einem Prozess geöffnet bleibt, wird die Verwendung von verschwinden du, aber immer noch von verwendet df. Sobald der letzte Prozess die Datei schließt (was spätestens geschieht, wenn der Prozess beendet wird), wird der von der Datei belegte Speicherplatz freigegeben und ist ebenfalls verfügbar df.

Dies ist ein benannter Server. Gibt es eine Möglichkeit, dass named den gesamten Platz einnimmt? Uptime ist ... wow ... 743 Tage. William Carter Baller vor 10 Jahren 0
@WilliamCarterBaller startet eine Option neu? Wenn das Problem eine angehängte Datei ist, sollte sie beim Neustart gelöscht werden. terdon vor 10 Jahren 0
Sie können mit "lsof -n | grep gelöscht" nach gelöschten Dateien suchen. Als Bonus sehen Sie auch, welcher Prozess diese Dateien offen hält. Sie können solche Dateien leeren, indem Sie "> proc / $ process_id / fd / $ fd" ausführen. $ Process_id ist die zweite Spalte, $ fd ist die fünfte Spalte. wurtel vor 10 Jahren 0
Wow @wurtel! Du hast absolut recht. Ausgabe von lsof -n | grep gelöscht gab: rsyslogd 943 root 1w REG 253,0 20649662640 122793 /var/log/messages.20140731 (gelöscht). 20649662640b übersetzt zu 20.64G. Neustart von Rsyslog behebt das Problem! Vielen Dank!! William Carter Baller vor 10 Jahren 0
Es ist lebensrettend zu wissen, dass Sie möglicherweise nicht in der Lage sind, Festplattenspeicher freizugeben, indem Sie große (und wachsende) Dateien in einer Notfalldatenträger-Vollsituation löschen. Sie müssen sicherstellen, dass der Prozess, der in diese Datei schreibt, auch die Datei schließt. Wenn dies keine Option ist, sollten Sie die Datei nicht löschen, sondern den Inhalt abschneiden (`:> Dateiname). Laszlo Valko vor 10 Jahren 0
0
Leeroy

Linux verfügt über einen Pufferbereich, der nur von root verwendet werden kann. Beim Ausführen sudo tune2fs -l /dev/sda1wird die Anzahl der reservierten Blöcke in der Ausgabe angezeigt.

Um reservierte Blöcke insgesamt zu deaktivieren, verwenden Sie einfach den folgenden Befehl:

sudo tune2fs -m 0 /dev/sda1 
tune2fs -l / dev / mapper / vg_dns-lv_root gibt Folgendes an: Dateisystem Betriebssystemtyp: Linux Anzahl Inode: 1859584 Blockanzahl: 7427072 Reservierte Blockanzahl: 371353 Freie Blöcke: 829324 Freie Inodes: 1736734 ... William Carter Baller vor 10 Jahren 0
Das heißt, die Anzahl der reservierten Blöcke beträgt 371353 oder insgesamt 0,177074909G. William Carter Baller vor 10 Jahren 0
0
William Carter Baller

@wurtels Information hat es behoben.

Output of `lsof -n | grep deleted` ==================================  rsyslogd 943 root 1w REG 253,0 20649662640 122793 /var/log/messages.20140731 (deleted).  

20649662640b übersetzt zu 20.64G. Neustart von Rsyslog behebt das Problem!

Vielen Dank an alle !!

kill -hup des rsyslogd-Prozesses hätte es auch behoben, der rsyslogd anweist, seine Logdateien zu schließen und wieder zu öffnen. Gehen Sie jetzt heraus, warum die Logfile-Rotation durchgeführt wurde, nicht aber die Signalisierung :-) wurtel vor 10 Jahren 0