【必見】duコマンドで簡単にディスク使用量を調べる方法|実例付

※本サイトにはプロモーション・広告が含まれています。

(最終更新月:2023年4月)

✔このような方へ向けて書かれた記事となります

「duコマンドについての基本が知りたい」

「duコマンドにはどんなオプションがあるのだろうか?」

「duコマンドでできることを具体例付きでみたい」

✔当記事を通じてお伝えすること

  • duコマンドの基本・書き方
  • duコマンドのオプション一覧
  • duコマンドを使った場面別の事例

当記事では、duコマンドの基本だけでなく、duコマンドのオプション一覧や場面別の使い方など応用した書き方まで、実例付きで解説しています。

ぜひ最後までご覧ください。

筆者プロフィール

筆者プロフィールアイコン

【現職】プロジェクトマネージャー/SE(元外資系金融機関営業)

【副業】ブログ(月間15万PV)/YouTube/Web・アプリ制作

コミュニケーション × ビジネススキル × 文章力 × プログラミングスキルを活かし、30後半からのIT系職へシフト。当サイトでは、実際に手を動かせるWebアプリの開発を通じて、プログラミングはもちろん、IT職に必要な情報を提供していきます。

【当ブログで紹介しているサイト】

当サイトチュートリアルで作成したデモ版日報アプリ

Django × Reactで開発したツール系Webアプリ

✔人に見せても恥ずかしくないコードを書こう

「リーダブルコード」は、わかりやすく良いコードの定義を教えてくれる本です。

  • 見るからにきれいなコードの書き方
  • コードの分割方法
  • 変数や関数の命名規則

エンジニアのスタンダートとすべき基準を一から解説しています。

何回も読むのに値する本なので、ぜひ手にとって読んでみてください。

Linuxでduコマンドを扱うための前提知識3選

まずはduコマンドを扱うために最低限知っておきたいことを見ていきましょう。

duコマンドだけ学ぼうとしても、よくわからないことも出てきてしまうからです。

  • Linuxにおけるコマンドの重要性
  • 各Linuxディストリビューションでのインストール手順
  • コマンドがインストール済みかどうかの確認方法

Linuxにおけるコマンドの重要性

Linuxシステム管理では、基本的なコマンドを理解し使いこなすことが重要です。

コマンドを理解すれば、効率的な作業が可能になり、トラブル発生時の対処もスムーズにおこなえます。

Linuxを使いこなす上でコマンド操作の習熟は、GUIツールを使うより柔軟性と効率性が向上します。

各Linuxディストリビューションでのインストール手順

ほとんどのLinuxディストリビューションでは、duコマンドは標準でインストールされています

もしインストールされていない場合は、パッケージ管理ツール(apt, yum, pacmanなど)を使ってインストールできます。

例えば、DebianやUbuntuでは以下のとおりです。

 sudo apt install coreutils

コマンドがインストール済みかどうかの確認方法

    duコマンドがインストール済みかどうかを確認するには、ターミナルでこちらのコマンドを打ちます。

du --version

インストールされていればバージョン情報が表示されます。

もしコマンドが見つからないというエラーが出た場合は、インストール手順に従ってインストールしてください。

duコマンドとは?知っておきたい最低限の知識4選

duコマンドについて知っておきたい事項を紹介します。

duコマンドが扱う対象物などについても理解を深めましょう。

  • duコマンドとは?その役割と利点
  • ディスク使用量の計測
  • ディレクトリとファイル
  • 容量単位(KB, MB, GB, TB)の違い

duコマンドとは?その役割と利点

 duコマンドは、ディスク使用量を確認するためのLinuxコマンドです。

ディレクトリやファイルのサイズを調べたり、ディスク容量を管理する際に役立ちます。

また、duコマンドを使うことで、ディスクの空き容量を簡単に確認することができ、データ管理において重要な役割を果たします。

ディスク使用量の計測

duコマンドは、ディスク使用量を計測するためのツールです。

ディスク使用量について、以下を表示します。

  • ディスクの総使用量:ディレクトリごとの容量を計算し算出
  • ディレクトリ内のファイルごとの使用量

ディレクトリとファイル

Linuxでは、ディレクトリとファイルが階層構造で管理されています。

ディレクトリはフォルダのような役割を果たし、ファイルや他のディレクトリを含んでいるのが一般的です。

duコマンドを使えば、特定のディレクトリやファイルのディスク使用量を調べられます。

容量単位(KB, MB, GB, TB)の違い

容量単位についても理解しておきましょう。

なぜならduコマンドでは通常KB単位で表示され、こちらで計算しなくてはいけないことがあるからです。

以下、単位名や大きさの比較、使われることの多い場面を表にしました。

単位名読み方大きさの比較使われることの多い場面
KBキロバイト1KB = 1024バイトテキストファイル
小さな画像ファイル
設定ファイル、など
MBメガバイト1MB = 1024KB音楽ファイル
標準的な画像ファイル
文書ファイル、など
GBギガバイト1GB = 1024MB動画ファイル
大規模なデータベース
ソフトウェア
OSの容量、など
TBテラバイト1TB = 1024GB大規模なストレージシステム
ビッグデータ解析
バックアップ、など

duコマンドの基本的な使い方

duコマンドの基本的な使い方を見ていきましょう。

まずは基礎となる書き方を確認してください。

  • コマンドの書式
  • オプションの説明
  • 実際の使用例

コマンドの書式

duコマンドの基本的な書式は、以下のとおり。

du [オプション] [対象ディレクトリ/ファイル]

オプションを省略すると、カレントディレクトリからの相対パスで指定したディレクトリのディスク使用量が表示されます。

オプションとは?

duコマンドにはさまざまなオプションが用意されています。

よく使われるオプションには、以下があります。

  • -h(人間が読みやすい単位で表示)
  • -a(ファイルも表示)
  • -c(合計値も表示)
  • -s(総計のみ表示)

実際の使用例

    例えば、特定のディレクトリのディスク使用量を人間が読みやすい単位で表示するには、-hオプションで以下のようにします。

$ du -h ~/Documents/itcdir
4.0K	/home/yulikepython/Documents/itcdir/dir2
8.0K	/home/yulikepython/Documents/itcdir/diffar/first
8.0K	/home/yulikepython/Documents/itcdir/diffar/second
36K	/home/yulikepython/Documents/itcdir/diffar
4.0K	/home/yulikepython/Documents/itcdir/dir
12K	/home/yulikepython/Documents/itcdir/itcdir
100K	/home/yulikepython/Documents/itcdir

duコマンドの便利なオプション

duコマンドのオプションを活用してディスク使用量を調べられます。

適切なオプションを組み合わせて、目的に応じたディスク使用量の情報を取得しましょう。

オプション名説明実際の使用例
-h人間が読みやすい単位で表示du -h /path/to/directory
-aファイルも表示du -a /path/to/directory
-c合計値も表示du -c /path/to/directory
-s総計のみ表示du -s /path/to/directory
–max-depth指定した深さまで表示du --max-depth=1 /path/to/directory
-kサイズをキロバイト単位で表示du -k /path/to/directory
-mサイズをメガバイト単位で表示du -m /path/to/directory
-Lシンボリックリンクの参照先のサイズを計算するdu -L /path/to/directory

duコマンドと他のコマンドの組み合わせ

duコマンドは、ほかのコマンドと組み合わせても効果を発揮します。

duコマンドで取得した一覧に、一定の処理をおこなうのです。

  • sortコマンドでサイズ順に並び替え
  • grepコマンドで特定のファイル/ディレクトリを検索
  • findコマンドで特定の条件に合うファイル/ディレクトリを検索

sortコマンドでサイズ順に並び替え

    duコマンドとsortコマンドを組み合わせることで、ディスク使用量をサイズ順に並び替えて表示できます。

以下の例では、ディスク使用量が大きい順に表示されます。

$ du -h ~/Documents/itcdir | sort -hr
100K	/home/yulikepython/Documents/itcdir
36K	/home/yulikepython/Documents/itcdir/diffar
12K	/home/yulikepython/Documents/itcdir/itcdir
8.0K	/home/yulikepython/Documents/itcdir/diffar/second
8.0K	/home/yulikepython/Documents/itcdir/diffar/first
4.0K	/home/yulikepython/Documents/itcdir/dir2
4.0K	/home/yulikepython/Documents/itcdir/dir

grepコマンドで特定のファイル/ディレクトリを検索

duコマンドとgrepコマンドで、特定のファイルやディレクトリを検索してディスク使用量を調べられます。

du -a ディレクトリパス | grep ‘調べたいキーワード’

$ du -a ~/Documents/itcdir | grep 'itc'
4	/home/yulikepython/Documents/itcdir/myscript.sh
0	/home/yulikepython/Documents/itcdir/dir2/dir
4	/home/yulikepython/Documents/itcdir/dir2
4	/home/yulikepython/Documents/itcdir/itc_zipped.txt
4	/home/yulikepython/Documents/itcdir/diffar/first.py
4	/home/yulikepython/Documents/itcdir/diffar/main.py
4	/home/yulikepython/Documents/itcdir/diffar/first/infirst.txt
8	/home/yulikepython/Documents/itcdir/diffar/first
4	/home/yulikepython/Documents/itcdir/diffar/second/insecond.txt
8	/home/yulikepython/Documents/itcdir/diffar/second
4	/home/yulikepython/Documents/itcdir/diffar/second.py
4	/home/yulikepython/Documents/itcdir/diffar/third.py
36	/home/yulikepython/Documents/itcdir/diffar
4	/home/yulikepython/Documents/itcdir/itc2.txt
4	/home/yulikepython/Documents/itcdir/archive.tar.bz2
4	/home/yulikepython/Documents/itcdir/archive.tar.xz
0	/home/yulikepython/Documents/itcdir/dir/symlink
4	/home/yulikepython/Documents/itcdir/dir
4	/home/yulikepython/Documents/itcdir/archive.tar.gz
4	/home/yulikepython/Documents/itcdir/txt_files.tar.gz
12	/home/yulikepython/Documents/itcdir/archive.tar
4	/home/yulikepython/Documents/itcdir/itcdir/itc.py
4	/home/yulikepython/Documents/itcdir/itcdir/itc.txt
12	/home/yulikepython/Documents/itcdir/itcdir
100	/home/yulikepython/Documents/itcdir

findコマンドで特定の条件に合うファイル/ディレクトリを検索

duコマンドとfindコマンドでは、特定の条件に合うファイルやディレクトリのディスク使用量がわかります。

次の構文は、指定したパス内のログファイル(.log)のディスク使用量が表示するもの。

find /path/to/search -type f -name ‘*.log’ -exec du -h {} +

少し変更して、指定したディレクトリ内のtxtファイルを取り出しましょう。

$ find ~/Documents/itcdir -type f -name '*.txt' -exec du -h {} +
4.0K	/home/yulikepython/Documents/itcdir/itc_zipped.txt
4.0K	/home/yulikepython/Documents/itcdir/diffar/first/infirst.txt
4.0K	/home/yulikepython/Documents/itcdir/diffar/second/insecond.txt
4.0K	/home/yulikepython/Documents/itcdir/itc2.txt
4.0K	/home/yulikepython/Documents/itcdir/itcdir/itc.txt

よくある質問(FAQ)

duコマンドを扱ううえで、よくある質問についても理解しておく必要があります。

扱っていると大半の人が出くわす疑問です。

  • duコマンドとdfコマンドの違いは?
  • ディスク使用量の削減方法は?

duコマンドとdfコマンドの違いは?

duコマンドは特定のディレクトリやファイルのディスク使用量を調べるのに使われるのに対し、dfコマンドはファイルシステム全体のディスク使用量を調べるのに使われます。

以下、特徴などを一覧にしました。

項目duコマンドdfコマンド
概要ディレクトリやファイルのディスク使用量を表示するファイルシステム全体のディスク使用量を表示する
対象特定のディレクトリやファイルマウントされたファイルシステム全体
表示内容ディレクトリごとの使用量、ファイルごとの使用量(オプションで指定)使用中のディスク容量、空き容量、使用率、マウントポイント
使用例du -h /path/to/directorydf -h
主な用途特定のディレクトリやファイルの使用量を調べるためシステム全体のディスク容量と空き容量を把握するため

ディスク使用量の削減方法は?

ディスクの使用量を調べたら、削減したいと考える方も多いはず。

以下がディスク使用量を減らす具体案です。

  • 不要なファイルやディレクトリを削除する
  • データの圧縮をおこな
  • クリーンアップツールを使用する

データの圧縮では、tarコマンドなどが使えます。

以下の記事を参考にしてみてください。

どのくらいの頻度でディスク使用量を確認すべき?

ディスク使用量の確認頻度は、システムの状況や管理者のポリシーによって異なります。

しかし、定期的にディスク使用量を確認し、不要なファイルの削除やデータ整理をおこなうことが望ましいといえるでしょう。

よくあるトラブルと対処法

よくあるトラブルと対処法についても触れておきましょう。

事前に理解すれば、トラブルの回避に繋がります。

  • コマンドが見つからない
  • 権限がないエラー
  • オプションが不正なエラー
  • 結果が出力されない
  • duコマンドが動かない
  • 空き容量が足りない

コマンドが見つからない

原因:duコマンドがインストールされていない。PATHが通っていない

対処法は以下のとおりです。

対象のディストリビューションでduコマンドをインストールし、PATHを設定。

権限がないエラー

原因:実行ユーザーに対象ディレクトリやファイルへのアクセス権限がない

対処はこちら。

sudoを使って権限を昇格させるか、権限を付与する。

オプションが不正なエラー

原因:タイプミスやオプションが存在しない

対処法↓

オプションを正しく指定し、再度実行してください。

結果が出力されない

原因:対象のディレクトリやファイルが存在しない、もしくは指定が間違っている

対処法は以下のとおり。

対象のディレクトリやファイルが存在することを確認し、指定を修正する。

duコマンドが動かない

原因:システムのリソース不足やファイルシステムの問題

対処法↓

プロセスやアプリケーションを終了し、リソースを解放する。必要であれば再起動します。

空き容量が足りない

原因:使用量が多いディレクトリやファイルが存在する

対処法はこちらです。

不要なディレクトリやファイルを削除し、ディスク容量を確保。

まとめ:duコマンドを使いこなして、ディスク内を最適化しよう

当記事の内容をまとめます。

  • duコマンドでディスク使用量が調べられる
  • duコマンドとほかのコマンドを組み合わせると効率が上がる
  • duコマンドだけでなく、さまざまなコマンドを使いこなすべき

duコマンドは、ディスク使用量を簡単に調べることができる便利なコマンドです。

最初は難しく感じるかもしれませんが、慣れてくると非常に便利で楽しいものです。

duコマンドをはじめとする基本的なコマンドをマスターすることで、Linuxの操作スキルが向上し、より効率的にシステム管理をおこなえます。

今後もLinuxコマンドを学び、スキルアップを目指しましょう。

タイトルとURLをコピーしました