【Linux】ディスク使用量を確認するのに便利なツールncduの紹介

ディスクの使用量が高くなってきて、ディスクを圧迫しているディレクトリやファイルを調査したいことがたまにあると思います。

普通はduコマンドやsortコマンドを駆使して、どのディレクトリやファイルがディスク容量を圧迫しているか調査するかと思います。

しかしduコマンドやsortコマンドのオプションを忘れてしまって、ネットでオプションを調べることもしばしば。

そんな時に便利なツールが、使用量をコマンドライン上でグラフィカルに表示してくれるncduです。

ncduのインストール方法

aptでもyumでも大抵のディストリビューションでncduで検索すると見つかると思います。

# apt search ncdu
Sorting... Done
Full Text Search... Done
ncdu/oldoldstable,now 1.10-1 i386 [installed]
  ncurses disk usage viewer
# yum search ncdu
Loaded plugins: priorities, update-motd, upgrade-helper
==================================================================== N/S matched: ncdu =====================================================================
ncdu.x86_64 : Text-based disk usage viewer

  Name and summary matches only, use "search all" for everything.

後は、見つかったncduのパッケージをapt installyum installでインストールするだけです。

ncduの使い方

ncduの使い方はとても簡単です。

調査したいディレクトリに移動してncduコマンドを起動するだけです。

$ ncdu

するとカレントディレクトリの使用量の調査を始めて、終わると使用量を表示してくれます。

--- /tmp --------------------------
e   4.0KiB [##########] /.font-unix                                                                                                                         e   4.0KiB [##########] /.XIM-unix
e   4.0KiB [##########] /.X11-unix
e   4.0KiB [##########] /.Test-unix
e   4.0KiB [##########] /.ICE-unix

ncduコマンドに調査したい場所のパスを引数として与えてあげると、カレントディレクトリではなく指定された場所の使用量の表示になります。

$ ncdu /tmp

その他の詳しい使い方はman ncduでマニュアルを参照して下さい。

$ man ncdu

簡易ヘルプ表示はコマンド実行時にhオプションを付けるか、グラフィカル画面で?キーを押して下さい。

$ ncdu -h
ncdu <options> <directory>

  -h                         This help message
  -q                         Quiet mode, refresh interval 2 seconds
  -v                         Print version
  -x                         Same filesystem
  -r                         Read only
  -o FILE                    Export scanned directory to FILE
  -f FILE                    Import scanned directory from FILE
  -0,-1,-2                   UI to use when scanning (0=none,2=full ncurses)
  --exclude PATTERN          Exclude files that match PATTERN
  -X, --exclude-from FILE    Exclude files that match any pattern in FILE
  --exclude-caches           Exclude directories containing CACHEDIR.TAG