CentOS 7のyumコマンドでCentOS-Vault.repoを参照する

CentOS 7のサポート期限が2024/6だったので、cronからエラーメールが届くようになった。

/etc/cron.hourly/0yum-hourly.cron:

Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was
14: curl#6 - "Could not resolve host: mirrorlist.centos.org; 名前またはサービスが不明です"
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=extras&infra=stock error was
14: curl#6 - "Could not resolve host: mirrorlist.centos.org; 名前またはサービスが不明です"
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=updates&infra=stock error was
14: curl#6 - "Could not resolve host: mirrorlist.centos.org; 名前またはサービスが不明です"

よく利用させて頂くrikenのリポジトリへ行くと、readmeだけ。(大変お世話になりました)
https://ftp.riken.jp/Linux/centos/7/


解決策として、リポジトリhttps://vault.centos.org/ へ向けるよう変更する。

yumリポジトリディレクトリをバックアップ

# cp -r /etc/yum.repos.d /etc/yum.repos.d.2024-06-30

次に、2つの手順を行う。

(1)/etc/yum.repos.d/CentOS-Base.repo にて、ミラーリポジトリを無効にする。

[base][updates][extras] のディレクティブに、enabled=0 を追加する。
[centosplus] の初期値は 0 になっているが、1 で利用していた場合は 0 にする。

こんな感じで。

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
enabled=0

(2)/etc/yum.repos.d/CentOS-Vault.repo を有効化する

もし、このファイルの末尾に、7.9.2009 の定義が無い場合は、それより前のバージョンの記述を参考に追記する。
7.9.2009 のbase/updates/extras の項目において、 enabled=1 とする。
centosplus は、enabled=0 or 1 どちらか用途に応じて設定。

こんな感じで。

# C7.9.2009
[C7.9.2009-base]
name=CentOS-7.9.2009 - Base
baseurl=http://vault.centos.org/7.9.2009/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
enabled=1

もし、利用しているCent7が 7.9 以外の場合は、そのバージョンのリポジトリを有効化する。


キャッシュを削除

# yum clean all

updateなどでリポジトリへのアクセスを確認

# yum  update
読み込んだプラグイン:fastestmirror
Determining fastest mirrors
C7.9.2009-base                                   | 3.6 kB     00:00
C7.9.2009-extras                                 | 2.9 kB     00:00
C7.9.2009-updates                                | 2.9 kB     00:00
(1/4): C7.9.2009-base/x86_64/group_gz              | 153 kB   00:00
(2/4): C7.9.2009-extras/x86_64/primary_db          | 253 kB   00:00
(3/4): C7.9.2009-base/x86_64/primary_db            | 6.1 MB   00:00
(4/4): C7.9.2009-updates/x86_64/primary_db         |  27 MB   00:00
No packages marked for update

サポート期限までに取り逃がしたupdateがあれば、適用できる。

ついでに、自動更新のパッケージ(yum-cron)をインストールしていた場合は、停止するか削除しておく。
(サポート期限より後では新しいパッチがリリースされず、自動更新する意味がないため)


CentOS 6の時にも同じような記事を書いてた
shobon.hatenablog.com