dfとduが異なる結果を表示する理由を理解するために、スタックで同様の質問に対する約22の回答を読んだ。しかし、私の関心事はどれに頼るべきかです。実際にどのレポートが正しいですか?
Ubuntu 22.04 LTにはブートディスクが1つしかあり、その他/追加の外部インストールディスクはありませんが、GCP Ubuntuサーバーではdfは50 GBのうち約40 GBのディスクが使用されているように見えますが、duとdfは両方とも49.9 GBの50 g使用を示します。 。 どちらが本当ですか?サーバーを維持するのに苦労しています。私のディスクがほぼ100%満たされているのか、それとも4 GBのRAMと2つの共有コアが私のシステム要件には十分ではないのですか?
答え1
計算にマウントされたすべてのファイルシステム(RAMと疑似ファイルシステムを含む)を含み、du
dfは実際のファイルシステムです。-x
duコマンドに追加してみてください。
それでも100%正確ではないかもしれません。さまざまな要因があります。ファイルシステムの種類、ファイルシステムのブロックサイズ、物理ブロックサイズ、ハードリンク、参照リンク、メタデータ、スパースファイルなど、とにかくこれは通常正確な計算ではありません。
答え2
マニュアルページに書かれているようにdu
計算してください。文書df
同時に計算される空間使用量ファイルシステムディスク領域使用量。したがって、df
これはあなたのユースケースに適したツールです。
df
パーティション(またはディレクトリ)にパラメータを渡して、そのパーティション(またはそれをホストするファイルシステム)に残っている空き容量を確認します。あなたの場合、これはあなたが探している結果であり、@CRで約9GBの空き容量が残ります。コメントで教えてください。
一方、du
ファイルまたはディレクトリを引数として使用すると、ディレクトリに他のファイルシステムのサブディレクトリが含まれている場合は、意味のないディスク使用量が得られます。 (出力がスペースを消費しない擬似ファイルシステムであるものをdu
参照しようとする方法を観察してください。)この場合、別のファイルシステムのディレクトリをスキップするakaオプションを使用する必要があることに/proc
注意してください。-x
--one-file-system