【ディーユー】

du とは?

最終更新:
💡 ファイルやフォルダが使うディスク容量を調べる

ファイルやディレクトリのディスク使用量を調べるコマンド。ディレクトリは中身を再帰的に調べて集計する。通常の表示はファイルの見かけの大きさとは異なることがあり、オプションや読み取れる範囲も結果に影響する。

📌 このページのポイント
duでディスク使用量を調べる du -h -d 1 . logs/ 12G data/ 4G 説明用の例:棒の長さは使用量の比 大きい場所は、中身と必要性を確認
GNU duで直下までの使用量を調べる例。数値は実測ではなく架空で、12対4の棒の比率をそろえた。-hのGは1024の累乗の単位で、削除できる量ではない。
ひよこ ひよこ
duは何を調べるコマンドなの?
ペンギン先生 ペンギン先生
指定したファイルやディレクトリが使うディスク容量を調べるよ。ディレクトリは中身も集計する。容量の大きい場所を探す手掛かりになるけれど、表示された使用量が、そのまま削除してよい量という意味ではないんだ。
ひよこ ひよこ
du -sh *はどう読むの?
ペンギン先生 ペンギン先生
GNU duなら-sは引数ごとの合計だけ、-hは読みやすい単位で表示する指定だよ。*はシェルが名前の一覧に展開する。Bashの通常の設定では、先頭がドットの隠しファイルや隠しディレクトリは、その一覧に含まれないんだ。
ひよこ ひよこ
隠しディレクトリも含めて調べたいときは?
ペンギン先生 ペンギン先生
GNU duならdu -h -d 1 .で、現在のディレクトリ全体と、直下のディレクトリまでの合計を見られるよ。ドットで現在のディレクトリを指定するので、中の隠し項目も集計に入る。-dなどのオプションは実装によって違うので、使う環境の説明も確認しよう。
ひよこ ひよこ
ファイルのサイズと表示が違うのはなぜ?
ペンギン先生 ペンギン先生
通常のduはディスク使用量を、--apparent-sizeを付けると見かけのサイズを表示するよ。スパースファイルなどでは差が出る。ハードリンクを重複して数える-lや、別のファイルシステムを除く-xなどでも集計条件が変わるんだ。
ひよこ ひよこ
結果を見るとき、ほかに確認することは?
ペンギン先生 ペンギン先生
どこを対象にしたか、読めない項目のエラーがないかを確認しよう。GNU duの-hの単位は1024の累乗、--siは1000の累乗を使う。読み取れた範囲や単位をそろえて比較すると、使用量の大きい場所を判断しやすいんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「du」って出てきたら「ファイルやフォルダが使うディスク容量を調べる」と思えばだいたいOK!
📖 おまけ:英語の意味
「disk usage」 = ディスク使用量
💬 diskは「ディスク」、usageは「使用量」。ファイルやディレクトリごとの使用量を調べるコマンドだよ。

参考資料

← 用語集にもどる