Debian で最も多くのディスク容量を使用するインストール済みパッケージは何ですか?

Debian で最も多くのディスク容量を使用するインストール済みパッケージは何ですか?

ルートパーティションのディスク容量が不足しているため、システムから一部のアプリケーションを削除したいと思います。どのパッケージが最も多くのディスク容量を使用しているかを確認するには?どこで見ることができますかaptitude

dfあるいは、同じ一般的なディスクスペースアナライザについて知っていますが、インストールされているbaobabアプリケーションのソリューションが必要です。

答え1

追加パッケージをインストールせずに最も簡単な方法は次のとおりです。

dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -n

パッケージ表示推定サイズ順(KB)、最大のパケットが最後に来ます。

残念ながら、少なくとも一部のシステムでは、このリストには削除されたがクリーンアップされていないパッケージが含まれています。これらのパッケージはすべて、以下を実行して消去できます。

dpkg --list |grep "^rc" | cut -d " " -f 3 | xargs sudo dpkg --purge

または、削除されたパッケージを削除したくない場合は、このバリアントを使用して、リストから「インストール済み」状態ではないパッケージをフィルタリングできます。

dpkg-query -Wf '${db:Status-Status} ${Installed-Size}\t${Package}\n' | sed -ne 's/^installed //p'|sort -n

答え2

最も簡単な方法は実行することですwajig large。パッケージはapt install離れている必要があります。

以下は、他の方法への2つのリンクです。

また、インストールサイズはパッケージが占めるスペースの一部にすぎないことに注意してください。圧縮されたバージョンはまだキャッシュに残り、いくつかのスペースを占有する可能性があります。で削除できますapt-get clean

答え3

必要ならsee which [installed] software packages use the most disk space[,] from aptitude...もちろん可能ですaptitude! CLIまたは{対話型、TUI、非CLI}の優れた機能を介して。まず、CLIについて説明し、次にTUIについて説明します。とにかく、あなただけが知る必要があります

  • 使用するコマンドラインオプション。次のテキストでは長いオプション(文書の検索を容易にするため)を使用していますが、もちろん短いオプションも使用できます。
  • 使用するコマンドライン引数
  • 使用する出力フォーマット文字列

インストールされているパッケージの中で最も多くのディスク容量を使用していることを示す最も基本的なコマンドラインは、おそらく次のとおりです。

aptitude search --sort '~installsize' --display-format '%p %I' '~i' | head

それでは分析してみましょう。

  • --sortパッケージのソート順で、~installsize次を指定します。パッケージ分類ポリシー
  • installsize「(予想)インストールサイズ別の並べ替え」を意味します。以前は~降順でソートすることを意味します(すべてのソートポリシーのデフォルト値は昇順であるため)。
  • --display-format<you guessed :->変更。これ書式文字列 '%p %I'aptitude出力にパッケージ名とインストールサイズを知らせます。
  • '~i'aptitudeインストールされているパッケージのみを検索するように指示します。
  • ...そして、そうでなければ非常にheadファイルにパイプまたは返す行数をless確認するためにインストールされたパッケージはほとんどありません(私の一般的なDebianワークステーションには2400を超える)。wc -laptitude

また、欲しいかもしれません

  1. aptitude表示するときに使用する行の幅(文字単位)を指定します--width <your desired integer value/>aptitudeは端末幅と考えるデフォルト値に設定されますが、時には間違って推測したり、ファイルに書きたい場合もあります。
  2. 書式文字列に追加情報を表示するか、フィールドの幅を変更します。たとえば、拡張フォーマット文字列は次のように'%30p %I %r %60d'表示されます。

    • %30p:フィールド幅= 30文字パッケージ名
    • %I : 予想される設置サイズ
    • %r : 'reverse dependencys count': このパッケージに依存する他のインストール済みパッケージのおおよその数
    • %60d:フィールド幅= 60文字のパッケージの簡単な説明

出力フィールドに変更が表示されない場合は、これを設定する必要があります--width

...{interactive、TUI}でもこれを行うことができますaptitude。たとえば、表示形式のデフォルト設定を指定するには

  • オプション - >デフォルト設定をクリックまたはナビゲートします。
  • スクロールパッケージビュー表示形式
  • %I現在の値を希望の位置に追加

インタラクティブにインストールされたパッケージに検索を制限するにはaptitude

  • 押すl(小文字L
  • ~iダイアログボックスに入力

インストールサイズで対話式にソートするにはaptitude

  • Shift-S(大文字S)を押す
  • installsizeダイアログボックスに入力

引用:

答え4

まず、次のツールを使用します。baobabsudo apt-get install baobab)見せるどここのスペースは、次のユーザーが使用しています。

ここに画像の説明を入力してください。

これは、良いグラフィックアウトラインを提供し、占めるスペースの範囲を狭めるのに役立ちます。以下を使用してコマンドラインからこの情報を取得することもできますdu

$ sudo du -ch /

ディレクトリサイズでソートするには、次のように渡しますsort(GNU仮定sort、Debianの場合)。

$ sudo du -ch / | sort -h

次に、このコマンドを使用して、特定のパッケージが使用するスペースを確認できます。

$ sudo apt-get --assume-no --purge remove "PACKAGE_NAME" | grep "be freed" | 
   awk '{print $4, $5}' 

たとえば、私のシステムからすべてのtexliveパッケージを削除すると、1,502 MBのスペースが確保されます。

$ sudo apt-get --assume-no --purge remove "texlive*" | grep "be freed" | 
   awk '{print $4, $5}' 
1,502 MB

最後に、この情報を入手できます。みんなこのコマンドを使用してインストールされたパッケージ:

$ for i in $(dpkg -l | awk '($1=="ii"){print $2}'); do  
    echo -e "$i\t"$(sudo apt-get --assume-no --purge remove "$i" | 
                    grep "be freed" | awk '{print $4, $5}'); 
  done

関連情報