Ubuntuで大容量ファイルを調査する方法 | 効率よく調査する方法

  • 作成日 2026.06.15
  • 更新日 2026.06.17
  • ubuntu
Ubuntuで大容量ファイルを調査する方法 | 効率よく調査する方法

Ubuntuサーバーを運用していると、知らないうちにディスク容量が圧迫されることがあります。ログファイルの肥大化やバックアップファイルの蓄積、Docker関連データなどが原因となるケースが多くあります。本記事では、Ubuntuで大容量ファイルを効率よく調査する方法を解説します。

まずはディスク使用量を確認する

最初に、現在のディスク使用状況を確認します。

df -h

実行例

Filesystem      Size  Used Avail Use%
/dev/sda1        50G   45G  2.5G  95%

「Use%」が高いパーティションを重点的に調査します。

ディレクトリごとの容量を確認する

どのディレクトリが容量を消費しているか調べます。

sudo du -h / --max-depth=1 2>/dev/null | sort -rh

実行例

容量の大きいディレクトリを特定できます。

特定ディレクトリを詳しく調査する

例えば「/var」が大きい場合はさらに調査します。

sudo du -h /var --max-depth=1 | sort -rh

問題のある場所を絞り込めます。

1GB以上の大容量ファイルを検索する

一定サイズ以上のファイルを探します。

1GB以上

sudo find / -type f -size +1G 2>/dev/null

500MB以上

sudo find / -type f -size +500M 2>/dev/null

不要なバックアップファイルやログファイルが見つかることがあります。

サイズ順に大きなファイルを表示する

特に便利なのが以下のコマンドです。

sudo find / -type f -exec du -h {} + 2>/dev/null | sort -rh | head -20

実行例

8.5G /var/lib/docker/overlay2/…
3.2G /var/log/syslog
2.8G /home/user/backup.tar.gz

容量を消費している上位20件を確認できます。

/var/logを調査する

ログファイルは肥大化しやすい場所です。

確認

sudo du -ah /var/log | sort -rh | head -20

syslog確認

ls -lh /var/log/syslog

journalログ確認

journalctl --disk-usage

不要なログを整理することで大幅に容量を削減できる場合があります。

Docker関連の容量を確認する

Docker利用環境では非常に重要です。

使用状況確認

docker system df

保存先確認

docker info | grep "Docker Root Dir"

詳細確認

sudo du -h /var/lib/docker --max-depth=1 | sort -rh

特に以下のディレクトリは肥大化しやすくなります。

・overlay2

・containers

・volumes

・buildkit

ncduを利用して視覚的に調査する

最もおすすめの方法です。

インストール

sudo apt update
sudo apt install ncdu -y

実行

sudo ncdu /

特徴

・キーボード操作で移動可能

・容量順に表示

・削除対象を見つけやすい

初心者でも直感的に利用できます。

ユーザーディレクトリを確認する

ホームディレクトリも確認します。

du -sh ~/.* ~/* 2>/dev/null | sort -rh | head -20

確認ポイント

・Downloads

・バックアップファイル

・圧縮ファイル

・仮想マシンイメージ

不要なファイルが残っていることがあります。

inode不足も確認する

容量不足ではなくinode不足の場合もあります。

確認

df -i

表示例

Filesystem      Inodes IUsed IFree IUse%
/dev/sda1      3276800 3276800     0 100%

IUse%が100%の場合は、小さなファイルが大量に存在しています。

調査後に不要ファイルを削除する際の注意点

容量削減のために削除する前に以下を確認してください。

・重要なバックアップではないか

・現在利用中のログではないか

・Dockerボリュームに必要なデータがないか

・本番環境のデータではないか

特に「rm -rf」を使用する際は十分注意しましょう。

参考文献

GNU Coreutils(duコマンド)

GNU Findutils(findコマンド)

ncdu公式サイト

Docker公式ドキュメント(docker system df)

まとめ

Ubuntuで大容量ファイルを調査する場合は、「df -h」で全体の使用状況を確認し、「du」と「find」を利用して容量を消費している場所を特定するのが基本です。

また、Docker環境では「docker system df」、視覚的な調査には「ncdu」が非常に便利です。定期的にディスク使用量を確認することで、「No space left on device」などのトラブルを未然に防ぐことができます。