ルートパーティションのディスク領域が少なくなっているので、一部のアプリケーションをシステムから削除したいと思います。最も多くのディスク容量を使用しているソフトウェアパッケージを確認するにはどうすればよいですか? aptitude
から表示することはできますか?
df
やbaobab
などの汎用ディスクスペースアナライザーについては知っていますが、インストールされているアプリケーションのソリューションが必要です。
最も簡単なのは、wajig large
を実行することです。パッケージはapt-install
- awayである必要があります。
他の方法でのリンクは次の2つです。
また、インストールされたサイズは、パッケージが占めるスペースの一部にすぎないことも覚えておいてください。圧縮されたバージョンはおそらくまだキャッシュ内にあり、それもいくらかのスペースを占有します。これらはapt-get clean
で削除できます。
(追加パッケージをインストールせずに)最も簡単な方法は次のとおりです。
dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -n
パッケージをサイズ順に表示し、最大のパッケージを最後に表示します。
残念ながら、少なくとも一部のシステムでは、このリストには削除されたがパージされていないパッケージが含まれています。このようなパッケージはすべて、次のコマンドを実行して削除できます。
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
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
またはファイル、あるいはwc -l
だけでaptitude
が返す行数を確認できます。あなたもしたいかもしれません
--width <your desired integer value/>
を使用して、表示時に使用するaptitude
の線幅(文字単位)を指定します。 aptitude
のデフォルトは、端末の幅と思われる値になりますが、間違って推測する場合や、ファイルに書き込みたい場合などがあります。フォーマット文字列に詳細情報を表示するか、フィールド幅を変更します。たとえば、拡張フォーマット文字列'%30p %I %r %60d'
が表示されます
%30p
:フィールドのパッケージ名width = 30文字%I
:推定インストールサイズ%r
: 'reversedepends count':このパッケージに依存する他のインストール済みパッケージのおおよその数%60d
:フィールドwidth = 60文字でのパッケージの短い説明出力フィールドに変更が表示されない場合は、--width
を設定する必要があることに注意してください。
...そして、{interactive、TUI} aptitude
でこの種のことを行うこともできます。たとえば、表示形式の設定を行うには、
%I
を現在の値の必要な位置に追加しますインタラクティブaptitude
にインストールされているパッケージに検索を制限するには、
L
)~i
と入力しますインタラクティブaptitude
でインストールサイズを並べ替えるには、
S
)installsize
と入力します参照:
aptitude
パッケージ検索パターンについては、 https://aptitude.alioth.debian.org/doc/en/ch02s04s05.html#tableSearchTermQuickGuide を参照してくださいaptitude
パッケージの並べ替えポリシーについては、 https://aptitude.alioth.debian.org/doc/en/ch02s05s01.html#secSortingPolicy を参照してくださいaptitude
出力表示形式については、 https://aptitude.alioth.debian.org/doc/en/ch02s05s01.html#secDisplayFormat を参照してくださいWajigをインストールしたくない場合。私は誰もがdebian-goodiesをインストールしていると思います:
dpigs - Show which installed packages occupy the most space
まず、 baobab
(Sudo apt-get install baobab
)スペースが使用されていることを示しますwhere:
これにより、すてきなグラフィカルな概要が得られ、スペースを占有しているものを絞り込むのに役立ちます。この情報は、du
を使用してコマンドラインで取得することもできます。
$ Sudo du -ch /
これをsort
に渡して(GNU sort
、Debianの場合はwhicihと仮定して))、ディレクトリサイズで並べ替えます。
$ 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
最後に、次のコマンドを使用して、allインストール済みパッケージのこの情報を取得できます。
$ 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
他の答えに追加するには、コマンドラインが好きなら古き良きdurep
を使用できます
# durep -td 1 /etc # or -td 2
[ /etc 319.4K (60 files, 43 dirs) ]
90.2K [######## ] 28.26% Apache2/
27.5K [## ] 8.62% apt/
23.7K [## ] 7.43% mime.types
19.7K [# ] 6.18% cron.daily/
18.7K [# ] 5.87% services
18.0K [# ] 5.64% security/
14.7K [# ] 4.61% init.d/
13.2K [# ] 4.13% ssl/
11.1K [# ] 3.48% ld.so.cache
9.0K [ ] 2.81% locale.gen
7.8K [ ] 2.43% pam.d/
4.5K [ ] 1.42% default/
4.3K [ ] 1.35% skel/
2.9K [ ] 0.92% locale.alias
おそらく、localepurge
を使用してスペースを解放できます。
# dpkg-reconfigure localepurge
# localepurge
localepurge: Disk space freed in /usr/share/locale: 26160 KiB
localepurge: Disk space freed in /usr/share/man: 1304 KiB
Total disk space freed by localepurge: 27464 KiB
最後に、おそらく多くのスペースを取ることができるアイコンとフォントを取り除くことができます。このウェブサイトで詳細を見る
https://ownyourbits.com/2017/02/18/squeeze-disk-space-on-a-debian-system/
(youryourbitsから抽出した例)
リストにいくつかのツールを追加して、システムでは常にdebfoster
とdeborphan
を使用しました。アップグレード後にぶらさがっている古い依存関係を探すのに最も役立ちます。
apt-get autoremove
はすばらしいですが、すべてを取得するわけではありません。インストールマークに従っているため、何を保持したいかが常にわかるとは限りません。ただし、apt-mark
を使用すると、ある程度それを指示できます。
以下も確認してください: https://wiki.debian.org/ReduceDebian
これはKDE/QT Filelightを追加する素晴らしいツールのコレクションですが、他のGUIディスクスペース使用ツールと同様ですが、トピックのタイトルに対する文字どおりの回答ではありません。
このスレッドの質問に文字どおりに答えると、つまり、システムで最大のパッケージは、原則として次のようになります。
Libreofficeパッケージスイート。これは単一のパッケージではありませんが、非常に大きいものです。
Linuxカーネルと関連するヘッダーパッケージが2番目に来ると思います。複数のカーネルがインストールされている場合、ほとんどのシステムではその傾向がありますが、それぞれがおよそ135 MBのディスク容量を毎年大きくすると思いますが、それだけの大きさです。フリーでないビデオドライバーを使用する場合は、関連するドライバーパッケージ/ファイルも存在します。 libreofficeと同様に、各カーネルは実際には2つまたは3つのパッケージ、イメージ、ヘッダー、およびドライバーパッケージで構成できるため、パッケージサイズごとのリテラルは、大まかな意味を除いて実際にはそれほど正確ではありません。
その後、私が知っているDebianのパッケージプールには、膨大な数の大きなパッケージはありません。
ルートパーティションが大きくなり始め、パッケージを削除してそれを圧縮する方法を考え始めたところで、通常は大きなルートパーティションに移動/サイズ変更するときが来ました。
もちろんapt-get cleanが最初に実行され、キャッシュされたすべての.debファイルを削除しますが、それを削除して、2つのカーネルを除いてすべて削除しても、十分なスペースがない場合は、それ以上です。クリーンアップなどはルートパーティションスペースの近くで実行している赤旗であるため、パーティションサイズを増やすことは実用的です。/varにaptのパッケージを実際にダウンロードおよび抽出する十分なスペースがない場合、これは実際の問題になる可能性があります。アップグレード。削除されたパッケージから構成ファイルを取り除いたパージアクションによるクリーンアップは、ディスク領域が小さいため、ディスクスペースの回復という点ではまったく効果がありませんが、残骸をクリーンアップすることは今やいいのですが、すべきではありません。意味のあるディスク領域を実際に取り戻すことは間違いです。
apt-get auto-removeも悪くありませんが、パッケージが削除されるのは時々間違っていることに注意してください。そのため、aptに内容を削除させる前に、そのリストを注意深く確認する必要があります。技術的には、そのリストをパージする方が良いです。同時に、構成ファイルも削除するので、削除または自動削除はそのままにしておくと思います。