経緯
CentOS 7 で最新の Git を入れるために IUS リポジトリを追加したら発生。
別に問題になるわけではないが、 yum-cron の hourly cron で毎時メールが飛んできてうざいので、何とかしたい。
原因
- IUS のミラーサイトのうち、およそ半数のミラーサイトの反映が遅い。 ミラーリスト
- yum-plugin-fastestmirror によって、利用するミラーが定期的に変わる。
- 最新版が反映されているミラーサイトを利用した後、反映が遅いミラーサイトに変わると、件名のようなメッセージが出力される。
対処
ようするに反映が遅いミラーサイトを利用しないようにしたい。が……
対処 A. ミラーサイトをそもそも使わないようにする。
非推奨。確実だが、配布側、利用側、どちらのためにも出来るだけミラーサイトを利用したい。
どうしようもないときに。
/etc/yum.repos.d/{name}.repo
を編集する。
-
mirrorlist
をコメントアウト。 -
baseurl
をアンコメント。
対処 B. 反映が遅いミラーサイトを調べ、利用しないように設定する。
ちょっとはマシ。調べるのが面倒だが……。
/etc/yum/pluginconf.d/fastestmirror.conf
で、除外したいミラーサイトのドメインを
exclude=mirror1.example.com, mirror2.example.com
のように設定する。
対処 C. 利用するミラーサイトを固定する。
同じくらい、ちょっとはマシ。やはり、どのミラーサイトの反映が早いかを一度調べる必要がある。
/etc/yum/pluginconf.d/fastestmirror.conf
で、利用するミラーサイトのドメインを
prefer=mirror.example.com
と設定する。
なお、 prefer に複数のドメインを設定することはできない。
対処 D. それ以外
現状なさそう。
結果
結局、対処 C (利用するミラーサイトを固定する) で対処した。
IUS リポジトリのミラーリストに mirrors.kernel.org
が含まれていたので、それを prefer
に設定した。
なお、設定後、
# リポジトリのメタ情報を削除。
sudo yum clean metadata
# yum-plugin-fastestmirror のキャッシュを削除。
sudo rm -f /var/cache/yum/x86_64/7/timedhosts
を実行する必要がある。