私の2Tドライブに小さなext3パーティションがあり、/
利用可能なスペースに違いがあるようです。この問題の原因と解決策をどのように確認できますか?
私が考えることができるすべてを試した後、起動時にfsckを強制的に実行しましたが、何の効果もありませんでした。
同じ構成を持つ別のシステムがありますが、これは発生しません。
# df -h /
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 9.7G 8.9G 318M 97% /
# du -shx --max-depth 1 /
5.2G /
# lsof | awk 'BEGIN {t=0} /(deleted)/ {t+=$7} END {print t}'
0
# tune4fs -l /dev/sda1 | grep -E 'state|Free|Reserve|size|Inode'
Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery sparse_super large_file
Filesystem state: clean
Inode count: 2621440
Reserved block count: 131029
Free blocks: 212317
Free inodes: 2487281
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 639
Inodes per group: 32768
Inode blocks per group: 1024
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
Inode size: 128
編集する:
fsck
パーティションが2%不連続であることを示します。
上記との比較du
(希少性):
# du -hxs --apparent-size /
4.9G /
答え1
心に浮かぶ1つの説明は、マウントポイントの後ろにdu
。
Linuxでは、他のマウントポイントからすべてを見るためにルートファイルシステムをバインドマウントできます。次に、ソースビューでマウントポイントが何を隠しているかを詳しく見てください。
mkdir /root/root-rebound
mount -o bind / /root/root-rebound
du -sc $(df -P | awk 'NR>2 {print "/root/root-rebound" $6}')
答え2
断片化を見たことがありますか?私が知っているduとdfが一貫性がないかもしれない唯一の方法は、(除外された削除された部分に加えて)オーバーヘッドと一般にいくつかの断片化されたファイルで発生することです(duは少量を報告しますが、範囲の数のためにこれらの場合)。 dfに示すように、ファイルはディスク上で本当に大きいです。
このツールは、ext3ファイルがどの程度断片化されているかを示すことができます。