web-dev-qa-db-ja.com

マウントを無視してディスク使用量を分析する

Ubuntuは私のルートファイルシステムがほぼ満杯だと不満を言っていますが、baobab(別名 "Disk Usage Analyser")またはdu -hを使用すると、他のすべてのマウントされたファイルシステムの使用状況も要約します。

さまざまなサブディレクトリにマウントされている他のファイルシステムを除外するにはどうすればよいですか?

66
drevicko

baobab: baobabを使用する場合は、ルートファイルシステムを別の場所にマウントして分析することで可能です。この方法では、他のファイルシステムは新しいルートマウントにマウントされず、/の下のマウントによって非表示になったファイルはすべて、分析で検出され、カウントされます。

ルートファイルシステムがsda1にあると仮定します(dfはどのデバイスかを教えてくれます):

mkdir root-rebound
Sudo mount /dev/sda1 root-rebound
baobab root-rebound

完了したら整理します:

Sudo umount root-rebound
rmdir root-rebound

または、上記のファイルシステムを手動でアンマウントすることもできます。多くの場合、過剰なディスク領域の使用の原因が含まれているため、ホームフォルダーのみをスキャンすることもできます。

dには、他のファイルシステムのカウントを防ぐことができる2つのオプションがあります。

 -x, --one-file-system
         skip directories on different file systems
     --exclude=PATTERN
         exclude files that match PATTERN

副<文>この[前述の事実の]結果として、それ故に、従って、だから◆【同】consequently; therefore <文>このような方法で、このようにして、こんなふうに、上に述べたように◆【同】in this manner <文>そのような程度まで<文> AひいてはB◆【用法】A and thus B <文>例えば◆【同】for example; as an example、

du -hx

マウントされている他のすべてのファイルシステムを無視するか、

du -h --exclude /media

ほとんどのファイルシステムがマウントされている/media内のすべてのファイルを無視します。

duを使用している場合、リストの一番下に最大のものが表示されるように並べ替えることで、出力を解読するのに役立ちます。例えば:

du -hx | sort -h
70
Cumulus007

ファイルシステムのタイプによっては、/の下のマウントポイントにルートファイルシステムをマウントできない場合があります。次のようなものが得られます。

mount: /dev/sda1 already mounted or /mnt busy
mount: according to mtab, /dev/sda1 is mounted on /

読み取り専用(-o ro)のマウントが役立つ場合があります。それが失敗した場合、バインドマウントを使用します。

mount --bind / /mnt

マウントしたら、ディスク使用量を分析するためのツールを使用します。つまり、du -sh * | sort -h

6
Bram

This バグレポートは、ディレクトリを無視するようにbaobabを構成する方法を説明しています。残念ながら、アプリ自体の内部ではできませんが、dconf-editorを使用してorg.gnome.baobab.preferencesを開く必要があります。ここにアイテムexcluded-urisがあります。これを['file:///path/to/ignore']に変更します(単一引用符で処理しました)。

3
geira

Baobabは、スキャンするデバイス/パーティションの制御を提供しようとします。Edit->Preferencesに移動します。通常、マウントポイント/でのみデバイスをスキャンします。ただし、これは すべてのタイプのリンク/マウント/バインディング を認識しません。そのため、重要でない構成を持っている場合、最終的にBaobabは混乱した結果を生成する可能性があります。


duの場合、dutopと呼ばれる次のシェル関数は、指定されたフォルダー(または現在のフォルダー)の最上位を表示します。これにより、サブフォルダーを1つずつプローブできます。

function dutop() { du --max-depth=1 --one-file-system -h $@ |sort -h; }

これにより、/に適用した場合に重要でない「Permission denied」エラーが報告される可能性がありますが、次のような考えでそれらを解決できます。

function sudutop() { Sudo du --max-depth=1 --one-file-system -h $@ |sort -h; }

大きなフォルダの場合、これらには時間がかかる場合があります。ソート操作はすべての中間結果をバッファリングしているため、増分ステータスは報告されません。待ちきれない場合は、Ctrl-Cで中止しても構いません。

2
nobar