[Linux] yumで一度利用したパッケージをキャッシュする

  • このエントリーをはてなブックマークに追加
  • LINEで送る

小ネタです。
AnsibleのPlaybookを作成していたのですが、何度もyumで同じパッケージのインストールを繰り返していると、処理に時間はかかるしネットワーク利用量(利用料)もバカになりません。

そこで一度でも利用したパッケージはローカルにキャッシュするよう設定します。

- Sponsored Link -

yumのパッケージをキャッシュする

設定

/etc/yum.confを開き、keepcache1を設定します(デフォルトは0)。以上で設定は終わりです。あとはいつも通りyum installするだけ。

$ sudo vi /etc/yum.conf 
keepcache=1

キャッシュ先のディレクトリを変更したい場合はcachedirも編集しておきます。

$ sudo vi /etc/yum.conf 
cachedir=/var/cache/yum/$basearch/$releasever

ちなみにどんどんファイル容量が肥大化していくため最終的にディスクフルの原因になりかねないので、用事が終わったら設定を元に戻すか、定常的に利用する場合には後述する方法でお掃除する必要があります。

キャッシュされたファイルの確認

キャッシュされたファイルは/var/cache/yum/の下にいます。

$ ls -lh /var/cache/yum/x86_64/7/
合計 8.0K
drwxr-xr-x. 4 root root 278  8月 30 14:00 base
drwxr-xr-x. 4 root root 183  8月 30 14:00 extras
drwxr-xr-x. 4 root root 137  8月 30 14:00 mysql-connectors-community
drwxr-xr-x. 4 root root 137  8月 30 14:00 mysql-tools-community
drwxr-xr-x. 4 root root 137  8月 30 14:00 mysql57-community
-rw-r--r--. 1 root root 128  8月 30 14:00 timedhosts
-rw-r--r--. 1 root root  79  8月 30 13:14 timedhosts.txt
drwxr-xr-x. 4 root root 183  8月 30 14:00 updates

特定のパッケージが存在するかどうか確認する場合はfindしてやります。以下はmysql関連のパッケージ一覧を表示します。

$ find /var/cache/yum -name 'mysql*' | grep '.rpm'

キャッシュをクリアする

yum cleanコマンドでキレイにお掃除できます。

$ sudo yum clean packages

参考ページ

このブログを応援する

お寄せいただいたお気持ちは全額サーバ代や次の記事を執筆するための原資として活用させていただいております。この記事が参考になった場合などぜひご検討ください。

PayPal(ペイパル)
PayPalで300円支払う
※金額は任意で変更できます。
※100円でも泣いて喜びますw
※住所の入力欄が現れた場合は「no needed」を選択ください
これまでのご協力者さま
- Sponsored Link -

ご質問やリクエストなどお気軽に。メールアドレスの入力は任意です。書き込みが反映されるまで時間がかかります。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください