GNU/Linux >> Linux の 問題 >  >> Linux

この巧妙なトリックでduの出力をより便利にします

ファイルまたはフォルダがパーティション上でどれだけのスペースを消費するかを知ることは、システム管理者または開発者にとって不可欠です。この知識により、ストレージのアップグレードの計画、ファイルの管理とローテーション、およびその他の必要なsysadminタスクを実行できます。このタイプのデータ収集で私のお気に入りのコマンドは、duです。 コマンド。

du コマンドは、各ファイルのディスク使用量を要約し、ディレクトリごとに再帰的に要約します。個別に、または正しい組み合わせで多くの役立つオプションを提供します。すべてのオプションについては、dumanページを参照してください。これがduでの私のお気に入りのトリックの1つです 。

duを使用

私は通常、複数のディレクトリの使用状況を同時にチェックするのが好きです。このようにして、どのディレクトリが私の最大の犯罪者であるかがわかります。 /var内のすべてのディレクトリを確認したいとします。 。これが私の標準のduです コマンド、わかりやすくするための長いオプション:

$ du --all --human-readable \
--one-file-system \
--max-depth=1 /var

各オプションの内訳は次のとおりです(括弧内に短いバージョンがあります):

  • --all-a ):すべてのファイルとフォルダを印刷します。
  • --human-readable-h ):サイズをバイト単位ではなく大きなチャンクで出力します(たとえば、1024ではなく1K)。
  • --one-file-system-x ):異なるファイルシステム上のディレクトリをスキップします。その結果、/var/logの場合 個別にマウントされますが、個別のファイルシステム上にあるため、カウントされません。これにより、物理メディア全体ではなく、1つのディレクトリパスでのみ使用されているディスク容量を確認できます。
  • --max-depth=1-d ):ディレクトリ(または--allを含むファイル)の合計を出力します )この場合、/varの1レベル下の場合のみ 。 2を使用する場合 代わりに、/varの2レベル下にフォルダを出力します 。 --one-file-systemとは異なり オプションの場合、報告されるサイズはこのオプションと同じままです。それほど多くの出力を見る必要はありません。

これが私のいつものduからの出力例です コマンド:

$ du -ahx --max-depth=1 /var
0       /var/lock
0       /var/mail
0       /var/run
12K     /var/kerberos
12K     /var/sieve
135M    /var/spool
1.6G    /var/log
181M    /var/cache
20K     /var/db
336K    /var/named
3.7G    /var/vmail
4.0K    /var/adm
4.0K    /var/crash
4.0K    /var/ftp
4.0K    /var/games
4.0K    /var/gopher
4.0K    /var/local
4.0K    /var/nis
4.0K    /var/opt
4.0K    /var/preserve
4.0K    /var/.updated
4.0K    /var/yp
4.2G    /var/lib
44K     /var/tmp
8.0K    /var/empty
9.7G    /var

この出力は良好ですが、容量で並べ替えた方がよいでしょう。そうすれば、一目でさらに読みやすくなります。

[コマンドラインスキルを磨くための10のチュートリアルを確認してください。 ]

秘訣:出力を並べ替える

良いニュースは、sort -k1 -rhを渡すことで、出力を任意の順序で並べ替えることができることです。 入力として。たとえば、出力を最初の列(容量)で並べ替えるコマンドを実行すると、次のようになります。

$ du -ahx --max-depth=1 /var | sort -k1 -rh
9.7G    /var
4.2G    /var/lib
3.7G    /var/vmail
1.6G    /var/log
181M    /var/cache
135M    /var/spool
336K    /var/named
44K     /var/tmp
20K     /var/db
12K     /var/sieve
12K     /var/kerberos
8.0K    /var/empty
4.0K    /var/yp
4.0K    /var/.updated
4.0K    /var/preserve
4.0K    /var/opt
4.0K    /var/nis
4.0K    /var/local
4.0K    /var/gopher
4.0K    /var/games
4.0K    /var/ftp
4.0K    /var/crash
4.0K    /var/adm
0       /var/run
0       /var/mail
0       /var/lock

ディスク使用量の監視

ncduなど、ディスク容量を確認するためのグラフィカルツールもあります。 コマンドですが、私にとってはdu コマンドはシンプルで直接的、そして効率的です。このクイックヒントが、システム管理者の基礎をレベルアップするのに役立つことを願っています。これらのオプションにより、ファイル容量データの収集がはるかに簡単になり、.bashrcにエイリアスとして入力すると、第二の性質になります。


Linux
  1. LinuxRPMComamndと10の便利な例

  2. Teeコマンドでプログラムを機能させる方法は?

  3. Sedでテール出力を着色しますか?

  1. du -h 小数点以下の桁数を増やす

  2. この出力をソートする方法 1,10,11..2

  3. ヘッダーを使用して ps 出力を grep する方法

  1. このコマンドライントリックでPDFサイズを縮小する

  2. これらのヒントを使用して、Bashの履歴をより便利にします

  3. Iconvに入力ファイルを変換された出力に置き換える方法は?