端末にリスト/サイズを表示する最良の方法は何ですか?

端末にリスト/サイズを表示する最良の方法は何ですか?

スペース全体がどれだけ占められているのかを確認したいのですが、/どうすればいいかわかりません。小計を使用して追加することも、パーティションのサイズを知らせるものを使用することもできますが、ls -halより良い方法がありますか?fdisk

答え1

クエリに含まれるファイル/ディレクトリの合計サイズを尋ねていますか/、またはルートファイルシステムの合計サイズを尋ねていますか?

電子ラーメンを使用してくださいdf -h /

後者の場合を使用して実行できますがdu -sh /、各ファイルを列挙する必要があるため、非常に遅くなります。より良いですが、バインドマウント、他のファイルシステムにスパースファイルとして保存されるファイルシステムなどのため、正確ではない可能性があります。df出力を合計します。

答え2

通常、ルートディレクトリにはファイルがないため、ルートファイルシステムでどのくらいのスペースが使用されているかを知りたいとします。これを行うコマンドはdfDiskF希土類)。

df -h /

引数なしでdfすべてのファイルシステムに関する使用情報を提供します(関連していないいくつかの特別な非ディスクサポートファイルシステムを除く)。

完全なファイルシステムを構成しないディレクトリと、そのサブディレクトリで使用されるスペースの量を知りたい場合は、次を使用しますduDiskあなた賢人)。

答え3

  • dfファイルシステムメタデータ、つまりファイルシステムが現在保存できる内容を報告します。注目すべき重要な点は、一部のファイルシステムでは空き領域を反映する必要がないことです(空き領域にもかかわらず)。 fsは良いアイデアだと思うときに事前に割り当てることができます(たとえば、XFSを使用するときにそうすることができます)。イ)大きなファイルの作成を開始すると、ファイルが少なく分散されるように余分なスペースが割り当てられ、実際のデータをディスクに書き込む必要があるときに割り当てるのに時間がかかりません。これらのスペースは使用可能とマークされていますが、わずかな遅延があります。この情報はまた、ファイルシステム構造にディスクの一部のスペースが必要または必要になることを反映しています。これは、いくつかのファイルシステムに奇妙な影響を与える可能性があります。つまり、100% 以上の空間使用量を報告します。

  • duファイルシステムのブロック単位で物理ディスク使用量を提供します(ほとんどのシステムでは、1つのブロックを使用して複数のファイルのデータを保存できるかどうかはわかりません)。コマンドラインで提供されるstat()最上位ディレクトリ階層に属するすべてのファイルを処理する必要があるため、特に小さいファイルの場合は遅くなります。du

  • stat単一ファイル(またはディレクトリ)に関する情報を提供します。

だから気になるなら:

  • ;を使用してファイルシステムにどのくらいの空き容量がありますかdf

  • ファイルに実際に存在するデータ量を使用してください(必ずしも単一のファイルシステムである必要はありません)。du特に、一部のネットワークファイルシステムでは、速度が遅くなる可能性があることに注意してください。

  • ルートディレクトリ自体が占めるスペースを記録するにはstat /

関連情報