Linuxでファイルやディレクトリのディスク使用量を確認したいとき、便利なのがdu
コマンドです。
シンプルながら奥が深く、オプションを活用することで多様な使い方ができるdu
コマンドは、サーバーの運用やストレージ管理に欠かせません。
本記事では、du
コマンドの基本的な使い方から、よく使われるオプション、応用的な使用例までをわかりやすく解説します。
これからLinuxに触れる初心者の方にも、日々の運用で困っている中級者の方にも役立つ内容となっています。
duコマンドとは?
du
は「disk usage(ディスク使用量)」の略で、指定したファイルやディレクトリのディスク使用量を表示するコマンドです。
LinuxやUnix系のシステムでは標準で使えるユーティリティのひとつで、ストレージの使用状況を把握する際に非常に便利です。
例えば、どのディレクトリがストレージを圧迫しているのかを確認したい場合、du
コマンドを使えばすぐに調べることができます。
システム全体の使用状況を調べることも、特定のフォルダだけを対象にすることも可能です。
基本的な使い方
最もシンプルな使い方は以下の通りです。
du
このコマンドを実行すると、カレントディレクトリ(現在のフォルダ)以下のすべてのディレクトリにおけるディスク使用量が、ブロック単位で表示されます。
ただし、これだけでは表示が見づらいため、多くの場合オプションと併用して使います。
よく使うオプション一覧
ここでは、日常的によく使われるdu
コマンドの主なオプションを紹介します。
-h(–human-readable)
人間に読みやすい単位(KB、MB、GBなど)で表示します。
du -h
-s(–summarize)
合計値のみを表示します。指定したディレクトリ全体のサイズだけを知りたいときに便利です。
du -sh /var
-a(–all)
ファイル単位での使用量も表示します。ディレクトリだけでなくファイルのサイズも確認したいときに。
du -ah
–max-depth=N
ディレクトリの深さを制限できます。大規模なディレクトリ構造の中で、上位階層の容量だけを確認したいときに便利です。
du -h --max-depth=1
この例では、現在のディレクトリ直下の使用量のみが表示されます。
実用的な使用例
サーバーで容量を食っているディレクトリを調査
du -h --max-depth=1 /home
このコマンドは、/home
ディレクトリの直下にある各ユーザーのディレクトリの使用量を一覧表示します。
どのユーザーが多くのディスクを使っているかをひと目で確認できます。
ログディレクトリの肥大化をチェック
du -sh /var/log
ログファイルは時間とともに膨れ上がることが多いため、定期的に確認しておくと、ストレージ逼迫の予防になります。
ファイルサイズ込みで容量確認
du -ah /var/www
Webサーバーのディレクトリ配下にあるファイルとフォルダの使用量をすべて表示します。ファイルごとの容量がわかるので、重たいファイルの特定に役立ちます。
注意点とコツ
シンボリックリンクの扱いに注意
du
はデフォルトではシンボリックリンクのサイズを追跡しません。そのため、リンク先の実体がどれくらい容量を使っているかはわかりません。
必要に応じて-L
オプション(–dereference)を使用することで、リンク先をたどることができます。
du -hL /some/symlink
アクセス権限が必要な場合も
一部のディレクトリにはroot権限が必要なことがあります。以下のようにsudo
を使えば確認できます。
sudo du -sh /root
duとdfの違い
du
はファイルやディレクトリごとの使用量を表示するコマンドです。
一方、df
はファイルシステム全体の空き容量や使用率を表示します。
du
: ファイル・ディレクトリ単位での使用量確認に便利df
: システム全体のストレージ使用状況を確認したいときに便利
この2つは用途が異なるため、必要に応じて使い分けることが大切です。
スクリプトで活用する例
たとえば、ログディレクトリの容量を自動的にチェックし、一定以上であれば通知するようなスクリプトも作成可能です。
bashコピーする編集する#!/bin/bash
size=$(du -s /var/log | awk '{print $1}')
threshold=500000 # 約500MB
if [ "$size" -gt "$threshold" ]; then
echo "ログが大きすぎます($size KB)"
fi
定期的にこのスクリプトをcronで実行すれば、運用の自動化にも役立ちます。
まとめ
du
コマンドは、Linuxのストレージ管理を行ううえで基本かつ強力なツールです。
単純にディスクの使用量を確認するだけでなく、オプションを組み合わせることでさまざまなニーズに対応できます。
特にサーバー運用やログ管理、ユーザー別の使用量チェックなど、実務での活躍の場は非常に広いです。
本記事で紹介した使い方をベースに、実際の環境でdu
コマンドを活用してみてください。
ストレージトラブルを未然に防ぎ、快適なLinux環境の維持にお役立てください。