いいですね。私を完全に混乱させる質問があります。
df -h
Dateisystem Größe Benut Verf Ben% Eingehängt auf
/dev/sda2 3,8G 1,5G 2,2G 41% /
/dev/sda1 122M 13M 103M 11% /boot
tmpfs 1014M 0 1014M 0% /dev/shm
/dev/sdb1 1016M 866M 150M 86% /srv
しかし:
du -hs /srv
55M /srv
参考としてのみ使用してください。
mount | grep srv
/dev/sdb1 on /srv type xfs (rw)
そのうち86%が私に警告メールを送りました(意図的なものです)、この/srv
メールは数時間前に削除されました。
を使用すると、du
そのパーティション内の正しい量のデータを取得できます。しかし、df
これは理解できないようです。なぜ? (この出力に基づいて定期的に警告メールを受信するため、少し迷惑です。)
これが重要かどうかはわかりませんが、CentOSバージョン5.11(最終)サーバーを使用しています。
答え1
df
du
各ファイルのサイズ情報を使用して、ファイルシステムから割り当てられたブロックを計算します。さまざまな理由で違いが発生する可能性があります。
1) アプリケーションでまだ開いている切断された (削除された) ファイル。 lsof +aL1 <filesystem>
プロセスを識別するのに役立ちます。
2)マウントポイントの下にファイルを隠すと便利ですdu
。debugfs
$ sudo debugfs
debugfs 1.42.12 (29-Aug-2014)
debugfs: open /dev/<the / file system device>
debugfs: cd /boot
debugfs: ls -l
1966081 40755 (2) 0 0 4096 26-May-2016 16:28 .
2 40555 (2) 0 0 4096 11-May-2016 10:43 ..
1974291 100644 (1) 0 0 0 26-May-2016 16:28 bob <---<<< /boot/bob is hidden by /boot fs
三)スパースファイル実際よりも大きく見えますね。割り当てられていないブロックはファイルサイズに含まれませんが、df
含まれます。
ハードリンクは欺瞞的ではありません。du
答え2
アプリケーションがまだファイルを開いている場合、プロセスが終了するまでディスク領域は解放されません。何が使用されているかを確認し、停止/srv
/再開