web-dev-qa-db-ja.com

ディスク領域を占有しているものを理解するにはどうすればよいですか?

WinDirStat の代替Linuxを探しています。ハードドライブのスペースを占有しているものを知りたいのですが。

コンソールで動作し、UIを必要としないプログラムが推奨されます。

89
ripper234

installing ncd の問題に基づいて、dusortを一緒に使用することをお勧めします。

例えば:

  • du /home | sort -rn(/ homeの下にあるすべてのファイル/ディレクトリを検索し、最大から最小に並べ替えます。
  • du -h /home | sort -rh(同じですが、MB/KB/etcで表示されます)-これには、coreutils 7.5以降が必要です(sort --version チェックする)

/ homeは任意のディレクトリに置き換えることができます。

75
N J

コマンドラインツールが必要な場合は、duのncursesバージョンである ncd をお勧めします。ディスク(または特定のフォルダー)をスキャンしてから、最上位のスペース使用量を表示します。特定のディレクトリを選択して、そのディレクトリに対応する概要を取得し、再分析する必要なく戻ることができます。

Screenshot of ncdu


GUIプログラムに問題がない場合は、 Filelight がWinDirStatに最も近いものです。スペース消費のグラフィカルビューを示します。

Screenshot of Filelight

ncduと同様に、Filelightでは特定のディレクトリを選択して、そのディレクトリの内訳を取得できます

92
Michael Mrozek

WinDirStatは実際にはKDirStatのポートであることに注意してください 、これはLinux/KDEプログラムです。したがって、WinDirStatに代わるLinuxを探している場合は、必ず KDirStat を確認してください。ほとんどのディストリビューションにはすでにパッケージされています。インストールするだけです。

別の代替案は、Michael Mrozekによってすでに引用されているFileLightとKonquerorプラグインfsviewです(コマンドラインからスタンドアロンで実行できます)。

43
Juliano

別のGUIプログラムは次のとおりです。 baobab

alt text

34
sudobash

QDirStat (以前のKDirStat)を使用します。

UIを実行/インストールする必要なく、サーバー/コンソールでキャッシュファイルを生成するPerlスクリプトが含まれています。それをデスクトップマシンに転送し、GUIクライアントで表示します。

詳細は https://unix.stackexchange.com/a/256516/186308 を参照してください。

11
icyerasor

私は次のコマンドラインを好みます:

$  du -s -m -x * | sort -n

分解すると、duはディスク使用量を示します。 -sは、各引数(現在のディレクトリの各アイテム)の合計を出力することを示し、-mは、メガバイト単位でサイズを表示することを示しています。これにより、並べ替えが簡単になります。 sortは実際には-h出力を理解していません。 -xは他のファイルシステムを無視します。これは、/varでスペースの占有を見つけようとする場合に役立ちます。/var/spool/fooは別のファイルシステムです。

7
P Joslin

このクールなpython /www.vrplumber.com/programming/runsnakerun/のスクリプトもあります。

bzr branch lp:~mcfletch/squaremap/trunk squaremap

最も機能が豊富ではありませんが、1つのpythonスクリプトから実行されるため、非常に移植性があります。

alt text

6
Falmarri

Windirstatのabout画面を見ると、kdirstatに基づいていることがわかります。

http://kdirstat.sourceforge.net/

6
DF1eCH

ツリーマップに基づく別のGUIツール Gd Map を試すこともできます。

4
Bruno

xdiskusage は非常に柔軟で軽量で、依存関係が非常に少なく、コンパイルが簡単です。

左から右にツリーが表示され、マウスまたは矢印キーでナビゲートしたり、ズームイン(クリックまたはEnter)したり、一部の部分を非表示にしたり、キーやコンテキストメニューを使用してソート順や色の数などを変更したりできます。

それは非常に軽量なので、リモートSSHリンク上で優れたパフォーマンスで使用できます。この場合、-qコマンドラインオプションを使用して、ファイルのウォーク中に表示される進行状況バーを無効にすることをお勧めします。

オプションで、事前にduを事前に実行することもできます。

1つの状況は、完全またはほぼ完全なリモートファイルシステムです。そのシステムでdu -ak | gzip >log_of_disk_usage.txt.gzを実行し、出力をフェッチしてgzip -dc log_of_disk_usage.txt.gz | xdiskusage -aqをローカルで実行します。
またはssh myremotesystem "cd /filesystem_near_full/ ; du -ak | gzip" > log_of_disk_usage.txt.gzでさえ、リモートで何かを書き込むことなく結果をローカルに保存します。

xdiskusageはファイルシステムの変更(ごみ箱への移動など)を提供していませんが、パスをクリップボードにコピーして、ファイルマネージャーやターミナルなどに貼り付けることができます。

xdiskusage screenshot

3

最近コマンドラインツールを使用しました(TUIではなくCLI): http://zevv.nl/play/code/philesight/

他の場所で表示できるPNGファイルを生成します。また、CGIスクリプトもあります。

ほとんどの場合、ローカルワークステーションではテキストモードに限定されていないため、適切なはずです。

2
OCTAGRAM

Duc( https://duc.zevv.nl/ )はコマンドラインから機能します。

Debian 9では、次のようにインストールして使用できます。

# apt install duc
# duc index /
# duc graph /

これにより、現在のディレクトリにduc.pngという名前のファイルが作成されます。これで、このファイルを別のGUI対応コンピューターにコピーできます。次のようになります。 duc.png

注:Ducは、@ OCTAGRAMが彼の回答で述べたツールの代わりです。

1
Jaime Hablutzel

また、du useを使用してディレクトリを見つけた後、特定のディレクトリ内のファイルをサイズでソートして表示するには、次のようにします。

ls -lrSh
1
Wodin