インフラエンジニアbacchiのわかったことまとめ

bacchi.me

RHELでyumに失敗する場合の対処法

RHELでyum-cronに失敗する

RHELで以下のようなcronエラーが発生しました。

ちなみに、yum-cronを実行するcronです。

そんなに遭遇したことのないトラブルなので対応法をメモ。

yumのキャッシュを飛ばしてみる

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

Update notice RHSA-2016:0650 (from rhel-7-server-optional-rpms) is broken, or a bad duplicate, skipping.
You should report this problem to the owner of the rhel-7-server-optional-rpms repository.

とりあえず、yumのキャッシュを飛ばせばいけるかなーと思って、キャッシュを飛ばしてから yum check-update を実行してみる。

# rm -rf /var/cache/yum/*

# yum clean all
読み込んだプラグイン:product-id, search-disabled-repos, subscription-manager
リポジトリーを清掃しています: rhel-7-server-eus-rpms rhel-7-server-optional-rpms rhel-7-server-rpms rhel-ha-for-rhel-7-server-eus-rpms
: rhel-rs-for-rhel-7-server-eus-rpms treasuredata
Cleaning up everything

# yum check-update
読み込んだプラグイン:product-id, search-disabled-repos, subscription-manager
rhel-7-server-eus-rpms | 3.2 kB 00:00:00
rhel-7-server-optional-rpms | 3.5 kB 00:00:00
rhel-7-server-rpms | 3.7 kB 00:00:00
rhel-ha-for-rhel-7-server-eus-rpms | 3.1 kB 00:00:00
rhel-rs-for-rhel-7-server-eus-rpms | 3.1 kB 00:00:00
treasuredata | 2.9 kB 00:00:00
(1/6): rhel-rs-for-rhel-7-server-eus-rpms/7Server/x86_64/primary_db | 156 kB 00:00:00
(2/6): rhel-ha-for-rhel-7-server-eus-rpms/7Server/x86_64/primary_db | 130 kB 00:00:00
(3/6): treasuredata/7Server/x86_64/primary_db | 27 kB 00:00:00
(4/6): rhel-7-server-optional-rpms/7Server/x86_64/primary_db | 3.2 MB 00:00:01
(5/6): rhel-7-server-eus-rpms/7Server/x86_64/primary_db | 21 MB 00:00:02
(6/6): rhel-7-server-rpms/7Server/x86_64/primary_db | 21 MB 00:00:03
(1/7): rhel-7-server-optional-rpms/7Server/x86_64/group_gz | 6.2 kB 00:00:00
(2/7): rhel-7-server-rpms/7Server/x86_64/group_gz | 134 kB 00:00:00
(3/7): rhel-7-server-eus-rpms/7Server/x86_64/updateinfo | 145 kB 00:00:00
(4/7): rhel-7-server-optional-rpms/7Server/x86_64/updateinfo | 885 kB 00:00:00
(5/7): rhel-7-server-rpms/7Server/x86_64/updateinfo | 1.2 MB 00:00:01
(6/7): rhel-ha-for-rhel-7-server-eus-rpms/7Server/x86_64/updateinfo | 6.2 kB 00:00:00
(7/7): rhel-rs-for-rhel-7-server-eus-rpms/7Server/x86_64/updateinfo | 11 kB 00:00:00
Update notice RHSA-2016:0650 (rhel-7-server-optional-rpms から) is broken, or a bad duplicate, skipping.
You should report this problem to the owner of the rhel-7-server-optional-rpms repository.

しかし、エラーが発生……

yumで使われるSSL証明書のチェック

RHNとサーバーがSSL通信に失敗するとyumができなくなるので、SSL証明書を確認してみました。

システムのUUIDがカスタマーポータルのものと一致していることを確認します。

UUIDは以下のコマンドを実行すればOK.

# openssl x509 -in /etc/pki/consumer/cert.pem -noout -text| grep 'Subject: CN'
Subject: CN=abcd1234-ab12-cd34-ef56-ghijkl789012

カスタマーポータル上でシステムのUUIDを確認するには、access.redhat.comの[サブスクリプション]->[サブスクリプション管理]->[ユニット] と進み、システムプロファイルを開けばUUIDを確認できます。

確認しましたが、証明書に問題はありませんでした。

サブスクリプションを登録しなおしてみる。

サブスクリプション登録しなおせば直ることがあるそうなので、やってみました。

# subscription-manager unregister
システムの登録は解除されました。

# subscription-manager clean
ローカルデータが全て削除されました

# subscription-manager register
登録中: subscription.rhn.redhat.com:443/subscription
ユーザー名: bacchi_test
パスワード:
このシステムは次の ID で登録されました: abcd1234-ab12-cd34-ef56-ghijkl789012

# subscription-manager subscribe --auto

インストール済み製品の現在の状態:
製品名: Red Hat Enterprise Linux Server
状態: サブスクライブ済み

製品名: Red Hat Enterprise Linux Server - Extended Update Support
状態: サブスクライブ済み

# yum clean all
読み込んだプラグイン:product-id, search-disabled-repos, subscription-manager
リポジトリーを清掃しています: rhel-7-server-eus-rpms rhel-7-server-rpms rhel-ha-for-rhel-7-server-eus-rpms rhel-rs-for-rhel-7-server-eus-rpms treasuredata
Cleaning up everything

# yum check-update
読み込んだプラグイン:product-id, search-disabled-repos, subscription-manager
rhel-7-server-eus-rpms | 3.2 kB 00:00:00
rhel-7-server-rpms | 3.7 kB 00:00:00
rhel-ha-for-rhel-7-server-eus-rpms | 3.1 kB 00:00:00
rhel-rs-for-rhel-7-server-eus-rpms | 3.1 kB 00:00:00
treasuredata | 2.9 kB 00:00:00
(1/5): treasuredata/7Server/x86_64/primary_db | 27 kB 00:00:00
(2/5): rhel-ha-for-rhel-7-server-eus-rpms/7Server/x86_64/primary_db | 130 kB 00:00:01
(3/5): rhel-rs-for-rhel-7-server-eus-rpms/7Server/x86_64/primary_db | 156 kB 00:00:01
(4/5): rhel-7-server-rpms/7Server/x86_64/primary_db | 21 MB 00:00:03
(5/5): rhel-7-server-eus-rpms/7Server/x86_64/primary_db | 21 MB 00:00:03
(1/5): rhel-7-server-rpms/7Server/x86_64/group_gz | 134 kB 00:00:00
(2/5): rhel-7-server-rpms/7Server/x86_64/updateinfo | 1.2 MB 00:00:01
(3/5): rhel-rs-for-rhel-7-server-eus-rpms/7Server/x86_64/updateinfo | 11 kB 00:00:01
(4/5): rhel-7-server-eus-rpms/7Server/x86_64/updateinfo | 145 kB 00:00:01
(5/5): rhel-ha-for-rhel-7-server-eus-rpms/7Server/x86_64/updateinfo | 6.2 kB 00:00:01

できた!!

まとめ

RHELでyumに失敗したら、キャッシュを飛ばしてみたり、サブスクリプションを登録し直すと幸せになれるかも!

  • B!