ファイルシステム上の du の結果が df と一致しない

ファイルシステム上の du の結果が df と一致しない

以下に見られる使用法 (82 GBと)の矛盾を説明するものは何ですか?13 GB

  • 使用方法df:

    $ df -h /
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/sda2              96G   82G  9.9G  90% /
    
  • 使用方法du:

    $ sudo du -cshx /
    13G     /
    13G     total
    

答え1

-xオプションは、物事をスキップすることが目的なので、偽の友人です。そのオプションでは、完全な画像が提供されることはありません。

完全なリストを取得するには、バインド マウントを使用し、スキップ オプションなしでバインドされたディレクトリに対して、、、、など、任意の操作を実行duしますncduxdiskusagebaobab

mkdir /mnt/root
mount --bind / /mnt/root
ncdu /mnt/root

すると、 にたくさんのデータがあること/mnt/backup(バックアップ タスクの実行時に がマウントされていなかったため)、または に巨大なファイルがあること( が存在せず、 に tmpfs がマウントされていなかった/devため)に気付く場合があります。dd if=/dev/zero of=/dev/sdx/dev/sdx/dev

削除されたファイルがプロセスによってまだ使用されている可能性もありますが、再起動後に消えてしまうため、通常は質問されません。ファイルシステムの不整合の可能性もありますが、これも再起動後に消えてしまいます (fsckプロセスを強制する場合)。

関連情報