ルートパーティションのディスク容量が不足しているため、システムから一部のアプリケーションを削除したいと思います。どのパッケージが最も多くのディスク容量を使用しているかを確認するには?どこで見ることができますか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 -l
aptitude
また、欲しいかもしれません
aptitude
表示するときに使用する行の幅(文字単位)を指定します--width <your desired integer value/>
。aptitude
は端末幅と考えるデフォルト値に設定されますが、時には間違って推測したり、ファイルに書きたい場合もあります。書式文字列に追加情報を表示するか、フィールドの幅を変更します。たとえば、拡張フォーマット文字列は次のように
'%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
ダイアログボックスに入力
引用:
aptitude
パッケージ検索モードについては、以下を参照してください。https://aptitude.alioth.debian.org/doc/en/ch02s04s05.html#tableSearchTermQuickGuideaptitude
パッケージ分類戦略については、以下を参照してください。https://aptitude.alioth.debian.org/doc/en/ch02s05s01.html#secSortingPolicy- 出力
aptitude
表示形式については、以下を参照してください。https://aptitude.alioth.debian.org/doc/en/ch02s05s01.html#secDisplayFormat
答え4
まず、次のツールを使用します。baobab
(sudo 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