私は最近ArchLinuxをインストールしましたが、比較的早く大量のストレージを使い果たしていることがわかりました。なんらかの理由で、私は約2週間ですでに17GBを使用しています。私は多くのソフトウェアをインストールしていないので、古いパッケージはすべてどこかに維持されていると信じられています。
これをサポートするために、パッケージをインストールし、そのパッケージを削除してから再インストールすると、pacmanはソフトウェアを再ダウンロードせずに、ソフトウェアを解凍して再インストールするだけであることに気付きました。
基本システムをインストールした後、追加のソフトウェアを追加する前に、約2GB程度を使用しました。それ以来、Matlab、Skype、Wine、およびその他のいくつかの小さなプログラムのみをインストールしました。もちろん、不足しているライブラリなどもインストールしましたが、15GB近くの価値はありません。
私はここで完全に間違っていますか、それとも新しいバージョンにダウンロード/アップグレードするときにArchが古いパッケージを削除することはありませんか?
その場合、これらの未使用のパッケージを削除するにはどうすればよいですか?
また、インストールされているパッケージを削除するときは、pacman -R ...
を使用します。
承認された回答:
いいえ、pacmanはキャッシュから古いパッケージを削除しません(/var/cache/pacman/pkg
)したがって、時間の経過とともに、いっぱいになる可能性があります。
キャッシュをクリアするには、2つのアプローチを採用できます。1つはpacman -Sc
を使用したブルートフォースです。 :
-c、–clean
キャッシュからインストールされなくなったパッケージと、現在使用されていない同期データベースを削除して、ディスク領域を解放します。
pacmanがパッケージをダウンロードすると、キャッシュディレクトリに保存されます。さらに、データベースはダウンロード元の同期DBごとに保存され、構成ファイルpacman.conf(5)から削除されても削除されません。 1つの–cleanスイッチ
を使用して、インストールされなくなったパッケージのみを削除します。 2つを使用して、キャッシュからすべてのファイルを削除します。どちらの場合も、パッケージや未使用のダウンロード済みデータベースを削除するための
はいまたはいいえのオプションがあります。
または、より微妙なアプローチとして、pacman-contribに付属しているユーティリティの1つであるpaccache
を使用できます。 :
paccacheは柔軟なpacmanキャッシュクリーニングユーティリティであり、
pacmanパッケージtarballを含むディレクトリから削除される量と内容を制御するのに役立つ多数の
オプションがあります。
デフォルトでは、paccache -r
インストールされたパッケージの最後の3つのバージョンを除くすべてが削除されますが、この番号は-k, --keep
で変更できます。 スイッチ。 -d, --dryrun
もあります 変更をプレビューするように切り替えます。 -m, --move <dir>
を使用することもできます パッケージを選択した別のディレクトリに移動するオプション。 paccache -h
を参照してください またはpaccache --help
すべてのスイッチに対して。
pacman-contribパッケージには、パッケージ管理を支援するユーティリティがいくつかあります。それらすべてを調べて、それらがどのように機能し、Archの実行をはるかに簡単にするかを理解することは価値があります。完全なリストは次のように表示されます:
pacman -Ql pacman-contrib | awk -F"[/ ]" '//usr/bin/ {print $NF}'