dfコマンドは誤った使用法を報告します。

dfコマンドは誤った使用法を報告します。

私のeMMCデバイスには、df -hコマンドの次の出力を報告するパーティションがあります。

Filesystem       Size  Used Avail Use% Mounted on
/dev/mmcblk2p3    16Z   16Z   84M 100% /data

しかし、パーティションサイズは100MBです!パーティション形式はext4です。上記のように、出力は使用されたスペースの膨大な値を報告します。実際、パーティションは約5MBしか使用しませんが、何らかの理由でdfは大きな値を報告します。 du -shコマンドでパーティションで使用されているサイズを確認すると、次のように報告されます。

#du -sh
5.8MB

また、une2fsコマンドで出力を確認しましたが、得られた結果は次のとおりです。

Filesystem state:         clean
Errors behavior:          Continue
Filesystem OS type:       Linux
Inode count:              25688
Block count:              102400
Reserved block count:     5120
Overhead blocks:        50343939
Free blocks:              87634
Free inodes:              25190
First block:              1
Block size:               1024
Fragment size:            1024
Reserved GDT blocks:      256
Fragments per group:      8192
Inodes per group:         1976
Inode blocks per group:   247
Flex block group size:    16
Filesystem created:       Thu Nov 21 06:38:03 2019
Last mount time:          Thu Mar 10 13:20:58 2022
Last write time:          Thu Mar 10 13:20:58 2022
Mount count:              31
Maximum mount count:      -1
Last checked:             Sat Jan 22 08:17:33 2022
Check interval:           0 (<none>)
Lifetime writes:          604 MB
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
First inode:              11
Inode size:               128
Journal inode:            8

オーバーヘッドブロックが何であるか、なぜオーバーヘッドブロックに大きな数字が表示されるのか知っていますか? dfコマンドの出力には100%の使用量が表示されますが、パーティションにファイルを作成できます。 dfコマンドが100%使用量ではなく正しい値を返すかどうかを確認する方法、またはune2fsにリストされている「オーバーヘッドブロック」をクリアする方法をご存知ですか?

私のスクリプトはパーティションの使用率を確認し、使用量が70%を超えるとファイルを削除します。 dfコマンドは常に100%の使用量を表示するため、常にすべてのファイルを削除します。 df コマンドが使用に適しているかどうかを教えてください。あるいは、duなどの他のコマンドを使用する必要があります。

ベストアンサー1

おすすめ記事