Festplattencache-Auslastung unter Linux DF-Ergebnis

Festplattencache-Auslastung unter Linux DF-Ergebnis

Ich habe ein Problem, bei dem die Groß-/Kleinschreibung der DF-Ergebnisse unzuverlässig ist. Ich verwende das XFS-Dateisystem auf SLES 11 SP3.
Grundsätzlich besteht ein großer Unterschied (ein paar GB) zwischen der freien Größe vor und nach dem Löschen des Festplattencaches. Weiß jemand, warum der Festplattencache zusätzlichen Speicherplatz verbraucht?
Beispiel:

VideoEdge:/ # df
Filesystem     1K-blocks      Used Available Use% Mounted on
...
/dev/sdb2      870942208 824794856  46147352  95% /mediadb
/dev/sdc1      975746564 924536548  51210016  95% /mediadb1
/dev/sdd1      975746564 153177500 822569064  16% /mediadb2

VideoEdge:/ # echo 3 > /proc/sys/vm/drop_caches 

VideoEdge:/ # df
Filesystem     1K-blocks      Used Available Use% Mounted on
/dev/sdb2      870942208 822225756  48716452  95% /mediadb
/dev/sdc1      975746564 923374888  52371676  95% /mediadb1
/dev/sdd1      975746564 148323524 827423040  16% /mediadb2
VideoEdge:/ # df

Aus dem Obigen geht hervor, dass nach dem Löschen des Speicherplatzes mehr Speicherplatz verfügbar ist.

Wir verwenden df, um abzuschätzen, wie viel Speicherplatz verwendet werden kann, und versuchen, alte Daten zu entfernen, wenn df angibt, dass der Speicher zu 95 % voll ist. Da der Festplattencache unvorhersehbar viel Speicherplatz beansprucht, verursacht dies Probleme.

Weiß jemand, warum der Festplattencache vorübergehend Speicherplatz verbraucht? Gibt es eine Möglichkeit zu berechnen, wie viel Speicherplatz der Festplattencache belegt oder wie viel er maximal belegen kann?

Wir möchten den Festplattencache nicht leeren, da dies von Zeit zu Zeit zu Leistungseinbußen führen kann.

VideoEdge:/ # df
Filesystem     1K-blocks      Used Available Use% Mounted on
rootfs           8259484   5592116   2247724  72% /
udev             2021220       228   2020992   1% /dev
tmpfs            2021220       144   2021076   1% /dev/shm
/dev/sda1        8259484   5592116   2247724  72% /
/dev/sda3      463282160  75389072 387893088  17% /var
/dev/sdb1      104804356     32928 104771428   1% /var/opt/americandynamics/venvr/clipexport
/dev/sdb2      870942208 821370196  49572012  95% /mediadb
/dev/sdc1      975746564 923423496  52323068  95% /mediadb1
/dev/sdd1      975746564 148299180 827447384  16% /mediadb2

/dev/sdb2 on /mediadb type xfs (rw,noatime,nodiratime,attr2,nobarrier,inode64,allocsize=4096k,noquota)
/dev/sdc1 on /mediadb1 type xfs (rw,noatime,nodiratime,attr2,nobarrier,inode64,allocsize=4096k,noquota)
/dev/sdd1 on /mediadb2 type xfs (rw,noatime,nodiratime,attr2,nobarrier,inode64,allocsize=4096k,noquota)

Antwort1

Bitte beachten Sie:

Warum verbrauchen meine XFS-Dateisysteme plötzlich mehr Speicherplatz und sind voller Sparse-Dateien?

Dies ist ein Ergebnis der dynamischen Vorabzuordnungsfunktionen von XFS. Dabei handelt es sich im Wesentlichen um Dateipuffer, die Schreibvorgänge zusammenfassen, um eine Dateifragmentierung zu verhindern. Es gibt einige Workarounds.

  • du --apparent-sizekann hilfreich sein.
  • Mount-Optionen für das XFS-Dateisystem wie beschrieben inverknüpfte Frage.

In beiden Fällen ist Ihr Dateisystem gefährlich voll (95 %+). Der geringe Pufferspeicherplatz ist irrelevant, wenn man bedenkt, dass Ihre Auslastung deutlich unter 80 % liegen sollte. Sie können die dfErgebnisse genauso gut verwenden, da diese die tatsächliche Auslastung zu einem bestimmten Zeitpunkt darstellen.

verwandte Informationen