ncdu - NCurses ディスク使用量アナライザーチートシート
ncdu(NCurses Disk Usage)は、ターミナル内全体で実行されるインタラクティブなディスク使用量アナライザーです。ディレクトリツリーを1回スキャンしてから、サイズでソートされた状態でそれを閲覧し、サブディレクトリにドリルダウンし、ファイルまたはフォルダをその場で削除できます。ターミナルのみが必要なため、ヘッドレスサーバーまたはSSH経由のリモートサーバーでスペースを食っているものを見つけるための標準的なツールです。
インストール
| プラットフォーム | コマンド |
|---|
| Ubuntu/Debian | sudo apt install ncdu |
| Fedora/RHEL | sudo dnf install ncdu |
| Arch Linux | sudo pacman -S ncdu |
| openSUSE | sudo zypper install ncdu |
| Alpine | sudo apk add ncdu |
| macOS(Homebrew) | brew install ncdu |
| FreeBSD | sudo pkg install ncdu |
基本的な使用法
| コマンド | 説明 |
|---|
ncdu | 現在のディレクトリをスキャン |
ncdu / | ファイルシステム全体をスキャン |
ncdu /var/log | 特定のパスをスキャン |
ncdu -x / | 1つのファイルシステムにとどまる(マウントポイントを横切らない) |
sudo ncdu / | ルート権限でスキャン(保護されたファイルを含める) |
ncdu --help | すべてのオプションを表示 |
ナビゲーションキー
| キー | アクション |
|---|
↑ / ↓ または j / k | 選択を移動 |
→ / Enter または l | 選択されたディレクトリを入力 |
← または h | 親ディレクトリに移動 |
n | 名前でソート |
s | サイズでソート(デフォルト) |
C | アイテム数でソート |
a | 見かけのサイズvsディスク使用量を切り替え |
g | パーセンテージ / グラフ表示を切り替え |
? | ヘルプスクリーン |
q | 終了 |
ファイルの管理
| キー | アクション |
|---|
d | 選択されたファイルまたはディレクトリを削除 |
i | 選択されたアイテムに関する情報を表示 |
t | ソート内のディレクトリ前ファイルを切り替え |
e | 隠しファイルを表示/非表示にする |
r | 現在のディレクトリを再計算(再スキャン) |
エクスポート及びインポート(リモートワークフロー)
ncduはスキャンをファイルに保存して後で別の場所で表示できます — SSHセッションを開いたままにせずにサーバーを監査するのに最適です。
| コマンド | 説明 |
|---|
ncdu -o scan.json / | スキャンしてファイルに結果をエクスポート |
ncdu -o- / > scan.json | stdout にエクスポート(ファイルにリダイレクト) |
ncdu -f scan.json | 以前保存されたスキャンを開く(オフライン) |
ssh host 'ncdu -o- /' > scan.json | リモートボックスをスキャン、ローカルで閲覧 |
知る価値があるオプション
| オプション | 説明 |
|---|
-x | ファイルシステムの境界を越えない |
--exclude PATTERN | グロブに一致するパスをスキップ |
--exclude-kernfs | 疑似ファイルシステムをスキップ(/proc、/sys) |
-r | 読み取り専用モード(削除を無効化) |
-q | 静か/遅いリンク上での低速更新 |
--color dark | カラースキームを有効化 |
一般的なワークフロー
# サーバーの最大のスペースホグを安全に見つける(読み取り専用)
sudo ncdu -x -r /
# インタラクティブセッションなしでリモートホストを監査
ssh prod-box 'ncdu -o- -x /' > prod-scan.json
ncdu -f prod-scan.json
# ビルドキャッシュディレクトリをインタラクティブにクリーンアップ
ncdu ~/.cache # navigate, press d to delete
ncdu vs その他のディスク使用量ツール
| ツール | スタイル | 最適な用途 |
|---|
| ncdu | インタラクティブTUI | ナビゲート + 削除、リモートサーバー |
| dust | ワンショットツリー+バー | クイックビジュアル概要(Rust) |
| duf | マウント/使用量テーブル | 「ディスクはどのくらい満杯?」 |
| du | プレーンテキスト | スクリプトとパイプライン |
リソース