duコマンドの使い方:ディレクトリの使用容量を集計する
duは、ディレクトリやファイルが使っているディスク容量を集計するコマンドです。どのディレクトリが容量を圧迫しているのか、掘り下げて特定するときに使います。
duのよく使う形
実務や学習で登場しやすい使い方を、そのまま入力できる形でまとめました。
| コマンド例 | 内容 |
|---|---|
du -sh /var/log | ディレクトリ全体の合計を、読みやすい単位で表示 |
du -sh * | 現在のディレクトリ直下の各項目ごとの合計 |
du -h --max-depth=1 /var | 指定した深さまでの内訳を表示 |
du -sh * | sort -h | 容量の小さい順に並べる |
du -sh * | sort -rh | head | 容量の大きい上位を表示 |
duの主なオプション
| オプション | 意味 |
|---|---|
-s | 合計のみ |
-h | 読みやすい単位 |
-a | ファイル単位でも表示 |
--max-depth | 集計する階層の深さを指定 |
duの実行例と結果の読み方
user@linux-study:~$ du -sh projects/
128M projects/
du -shで、projectsディレクトリ全体の使用容量を合計して人が読みやすい単位(この例では128M)で表示しています。-sを付けないとサブディレクトリごとの内訳まで表示されます。
練習用ターミナルでは、duをブラウザ上で安全に試せます。
duを使うときの注意点
du -sh *は、.で始まる隠しファイルを含みません。隠しディレクトリが怪しいときは、du -sh .[!.]* *のように指定します。
ルートからduを実行すると、時間がかかり負荷も高くなります。まずdfで逼迫している領域を特定し、そのマウントポイント配下に絞って実行しましょう。
duに関するよくある質問
-sと-hの意味は?
-sは合計だけ表示(summary)、-hは読みやすい単位で表示(human-readable)です。
特定のファイルだけ大きさを見るには?
ls -lh ファイル名でも確認できます。ディレクトリ全体ならduです。
関連ページ
duが登場する章:中級 第4章