linux-l: zum platzen

Joachim von Thadden thadden at running-systems.de
Mi Sep 29 19:38:29 CEST 1999


Sven Vogler wrote:
> 
> hi,
> 
> wir haben hier einen server von dem ich sehr unterschiedliche angaben
> zum belegten plattenplatz finde. jeden morgen schicken mir die rechner
> infos zum belegten plattenplatz zu.
[...]

Das liegt an der Berechnung. df sagt Dir immer den real belegten und
freien Platz an, egal welchen Parameter Du ihm zum Schlucken gibst.
Darauf kannst Du Dich verlassen. Anders rechnet df. Probier mal
folgendes:
> df
/dev/hda10            841440  151662   646310     19%   /var
> mkdir -p /tmp/tmp
> cd /tmp/tmp
> for n in 0 1 2 3 4 5 6 7 8 9; do
>   for m in 0 1 2 3 4 5 6 7 8 9; do
>     echo -n "1" >test$n$m
>   done
> done

Jetzt die Tests mit du und df:
> du -sb /tmp/tmp
2248    /tmp/tmp
> du -sk /tmp/tmp
102     /tmp/tmp
> du -sh /tmp/tmp
2,2K    /tmp/tmp
> df
/dev/hda10            841440  151764   646208     19%   /var
> echo $((151764-151662))
102

Wer hat recht??? Nun, df gibt uns die Anzahl der freien und belegten
Blöcke aus, die letzte Zeile evaluiert die Differenz der belegten Blöcke
vor und nach Anlegen der Dateien. Wir haben 100 Dateien mit jeweils
einem Byte angelegt. Das sind zwar nur 100 Bytes, jede Datei verbraucht
aber schnatürlich einen Block (wenn man nicht das super ReiserFS
verwendet) und der hat eine Größe, die beim Anlegen des Dateisystems
festgelegt wird und mit tune2fs erfragt werden kann:
> tune2fs -l /dev/hda10
ergibt u.a.
Block size:               1024
Also brauchen unsere 100 Dateien 100 Blöcke=100k. Zusätzlich verbrauchen
Verzeichnis und Verwaltungsinformationen noch etwas Platz, daher die
Differenz von 2k. du -sk und df geben also vernünftige Informationen. du
-sb zählt nur die gelistete Größe der Dateien (insg. 100 Bytes) und
addiert die Größe des Verzeichniseintrags/Verwaltungsinfos hinzu, ebenso
du -sh. Jetzt frag' aber bitte nicht, warum das so ist...

Mit freundlichen Grüßen/Sincerely
	Joachim von Thadden
    "Never run a touching system!"

-------------------------------------------------------------------
Running Systems					LINUX-Systempartner
Qualified Helpdesk   .   Netzwerkbetreuung  .   Sicherheitskonzepte
www.running-systems.de			        fax (030) 801 74 23
thadden at running-systems.de		     phone (0177) 717 08 96



Mehr Informationen über die Mailingliste linux-l