Arch Linuxでパッケージキャッシュをクリーンアップする方法
このガイドでは、Paccache スクリプトとは何か、Arch Linux および EndeavourOS や Manjaro Linux などの亜種でパッケージ キャッシュをクリーンアップする方法について説明します。
パッチェとは何ですか?
Arch Linux とその派生製品のデフォルトのパッケージ マネージャーである Pacman は、ダウンロードされたすべてのパッケージを /var/cache/pacman/pkg/
< に保存することは誰もが知っています。 ディレクトリ。
また、Pacman は古いパッケージやアンインストールされたパッケージをキャッシュから自動的に削除しないこともわかっています。特定の時間が経過すると、キャッシュ フォルダーのサイズが大きくなります。
したがって、Arch Linux では定期的にパッケージキャッシュをクリーンアップして、ハードディスクのスペースを解放することをお勧めします。
Pacman には、キャッシュされたパッケージをすべて削除するオプションが組み込まれています。 sudo pacman -Sc
コマンドを実行すると、キャッシュされたパッケージを削除できます。
ただし、このコマンドはキャッシュされた古いバージョンをすべて削除し、現在インストールされているパッケージのバージョンのみを使用可能な状態に残します。これは推奨される方法ではありません。
なぜなら、 場合によっては特定のパッケージを古いバージョンにダウングレードしたい場合があるからです。したがって、古いパッケージをすべてクリーンアップした場合は、それらを Cache フォルダーからインストールするという選択肢はありません。 Arch Linux 公式リポジトリからのみインストールできます。
ここで Paccache
スクリプトが役立ちます。 Paccache スクリプトは、Pacman パッケージ自体によって提供されます。したがって、インストール手順に煩わされる必要はありません。
Paccache は、デフォルトで 最新の 3 つのパッケージ バージョンを保持します。最新の 3 つのパッケージ バージョンを除き、インストールされているかどうかに関係なく、各パッケージのキャッシュされたバージョンがすべて削除されます。
この短いチュートリアルでは、paccache スクリプトを使用して Arch Linux とその派生製品のパッケージ キャッシュを適切にクリーンアップする方法を説明します。
A. Paccache を使用して Arch Linux のパッケージ キャッシュをクリーンアップする
1. まず、キャッシュ フォルダーで利用可能なキャッシュされたパッケージの数を確認します。
$ sudo ls /var/cache/pacman/pkg/ | wc -l
3185
2. 上記の出力に見られるように、合計で 3185 個のパッケージがキャッシュされました。キャッシュ フォルダーによって使用されている合計ディスク容量を確認してみましょう。
$ du -sh /var/cache/pacman/pkg/
9.7G /var/cache/pacman/pkg/
現在、9.7 GB のサイズのパッケージをキャッシュしています。これは、やりすぎ。全部は保管したくないんです。
3. 最新の 3 つのバージョンを除くすべてのパッケージをクリーンアップするには、次のコマンドを実行します。
$ sudo paccache -r
[sudo] password for sk:
==> finished: 854 packages removed (disk space saved: 4.37 GiB)
見る? Paccache は 854 個の古いパッケージやアンインストールされたパッケージをキャッシュから削除し、4.37 GB のディスク容量を節約しました。
4. キャッシュ フォルダーにいくつのパッケージが残っているかをもう一度確認してみましょう。
$ sudo ls /var/cache/pacman/pkg/ | wc -l
2331
素晴らしい!現在、Cache フォルダーには 2331 個のキャッシュされたパッケージが利用可能です。これらは、キャッシュされた各パッケージの 3 つの最新バージョンです。
5. ここで、キャッシュ フォルダーによって使用されている合計ディスク容量を確認します。
$ du -sh /var/cache/pacman/pkg/
5.4G /var/cache/pacman/pkg/
素晴らしい!最大 4GB のディスク容量を節約できました。
6. さらにパッケージを削除したいですか?もちろんできます! Paccache を使用すると、保持する最新バージョンの数を決定できます。
たとえば、最新バージョンを 1 つだけ保持したい場合は、次のコマンドを実行します。
sudo paccache -rk 1
ここで、k は、各パッケージの num
をキャッシュに保持することを示します。
7. アンインストールされたパッケージのキャッシュされたバージョンをすべて削除するには、u
フラグを指定して paccache を再実行します。
sudo paccache -ruk0
ここで、u
フラグは、アンインストールされたパッケージを示します。
8. 次の pacman コマンドを使用して、アンインストールされたパッケージをすべて削除することもできます。
sudo pacman -Sc
9. すべてのパッケージ (インストールされているかアンインストールされているかに関係なく) をキャッシュから完全に削除するには、次のコマンドを実行します。
sudo pacman -Scc
このコマンドを使用するときは注意してください。キャッシュされたパッケージが削除されると、それらを取得する方法はありません。
推奨ダウンロード - 無料電子ブック: 「5 日間で Linux を学ぶ」
B. Arch Linux のパッケージ キャッシュを自動的にクリーンアップする
1. パッケージ キャッシュを手動で消去するのが面倒な場合は、pacman
フックを使用してこのタスクを自動化できます。 pacman フックは、pacman
トランザクションのたびにパッケージ キャッシュを自動的に消去します。
これを行うには、ファイル /etc/pacman.d/hooks/clean_package_cache.hook を作成します。
sudo mkdir /etc/pacman.d/hooks
sudo nano /etc/pacman.d/hooks/clean_package_cache.hook
次の行を追加します。
[Trigger]
Operation = Upgrade
Operation = Install
Operation = Remove
Type = Package
Target = *
[Action]
Description = Cleaning pacman cache...
When = PostTransaction
Exec = /usr/bin/paccache -r
2. ファイルを保存して閉じます。今後、パッケージ キャッシュは、pacman
トランザクション (アップグレード、インストール、削除など) ごとに自動的に消去されます。 paccache
コマンドを毎回手動で実行する必要はありません。
詳細については、次のコマンドを実行して Paccache
のヘルプ セクションを参照してください。
paccache -h
関連記事:
- Arch Linux の Pacman で並列ダウンロードを有効にする
- Arch Linux に Paru AUR ヘルパーをインストールする方法
- Arch Linux の Reflector を使用して最新のミラー リストを取得する
結論
このガイドでは、Paccache スクリプトを使用してパッケージ キャッシュをクリーンアップする方法と、Arch Linux の pacman フックを使用してパッケージ キャッシュを自動的にクリーンアップする方法を学びました。これらのツールは両方とも、Arch Linux をクリーンな状態に保ち、ディスク容量を大幅に節約するのに役立ちます。