web-dev-qa-db-ja.com

yumのインストールと更新が失敗する-「CentOS-7-更新」リポジトリにリストされているGPGキーはすでにインストールされていますが、正しくありません

このアップデートの強制終了エラーに困惑しています。

このエラーは、更新リポジトリでgpgcheckを無効にするまで、すべての更新を押しつぶします。 IE /etc/yum.repos.d/CentOS-Base.repo|[updates].gpgcheck=0

それは私が持っているすべてのマシンで起こっています-最初は「ペット/スノーフレーク」タイプの問題だと思いましたが、いいえ、それは群れ全体に影響を及ぼしています。

_warning: /var/cache/yum/x86_64/7/updates/packages/scap-security-guide-0.1.36-9.el7.centos.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID f533f4fa: NOKEY
Public key for scap-security-guide-0.1.36-9.el7.centos.noarch.rpm is not installed
scap-security-guide-0.1.36-9.el7.centos.noarch.rpm                               | 4.4 MB  00:00:03
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

The GPG keys listed for the "CentOS-7 - Updates" repository are already installed but they are not correct for this package.
Check that the correct key URLs are configured for this repository.


 Failing package is: scap-security-guide-0.1.36-9.el7.centos.noarch
 GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
_

_gpg --quiet --with-fingerprint /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7_は正しい指紋を示します。

diffは_/etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7_と_http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-7_が一致することを示しています。

fileは/ etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7はPGP公開鍵ブロックであると述べています。

statは通常のファイルだと言っています。

_ls -lZa /etc/pki/rpm-gpg/_は、セキュリティコンテキストを持つroot:rootが所有するすべてのファイルを表示します:system_u:object_r:cert_t:s0

_lsattr /etc/pki/rpm-gpg/_は、属性が設定されていないことを示します。

ディスクのエラーは報告されていません。

OSが2016年にインストールされて以来、メモリやその他の更新が失敗したという記録はありません。

パッケージのURLは http://mirror.centos.org/centos/7.5.1804/updates/x86_64/Packages/scap-security-guide-doc-0.1.36-9.el7.centos.noarch。 rpm

_yum provides scap-security-guide_は言う:scap-security-guide-0.1.36-9.el7.centos.noarch is Repo:更新

/etc/yum.repos.d/CentOS-Base.repo (excerpt)
[ベース]
name = CentOS- $ releasever-ベース
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

_#_ releasedアップデート
[更新]
name = CentOS- $ releasever-アップデート
mirrorlist = http://mirrorlist.centos.org/?release= $ releasever&Arch = $ basearch&repo = updates&infra = $ infra
_#_baseurl = http://mirror.centos.org/centos/ $ releasever/updates/$ basearch /
gpgcheck = 1
gpgkey = file:/// etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

_/etc/yum.conf_
[メイン]
cachedir =/var/cache/yum/$ basearch/$ releasever
keepcache = 0
debuglevel = 2
logfile =/var/log/yum.log
exactarch = 1
obsoletes = 1
gpgcheck = 1
plugins = 1
bugtracker_url = http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg = centos-release

_#_ deltarpmのインストール後に追加
deltarpm = -1

再起動後、_yum clean all_を実行してすべてのアクティブなリポジトリをクリーンアップしました:_base epel extras mariadb psychotic updates_
続いて_rm -rf /var/cache/yum_
再実行する前に_yum update_
それは再びエラーを投げ、そうし続けます

Centos 7.4
Centos 7.5

3
iletras

私は問題を見ました(LOL-申し訳ありませんが、MITMまたは破損したミラーではありません)。システムにインストールおよびリンクされているgpgのバージョンまで追跡しました。通常はgpg2が必要です。ただし、gpg2バイナリが見つからない、PATHエントリが間違っている、または誤った順序になっている、バイナリへのリンクが見つからないなどの場合、gpgがデフォルトになる可能性があります。

2
Andrew

ここに到達する一部の人々はこれで問題を解決できるかもしれません:

Sudo yum install https://$(rpm -E '%{?centos:centos}%{!?centos:rhel}%{rhel}').iuscommunity.org/ius-release.rpm

および/または

Sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-$(rpm -E '%{rhel}').noarch.rpm

次に、yumを更新して、準備完了です

2
Mehdi Nellen

ミラーまたは何らかのMITMに本当に問題があるのか​​もしれません。

最初に(キャッシュはそのままなので、/var/cache/yumを削除する前に)キーIDを取得します(キーIDの最後の8文字、9番目は改行です)

rpm -qpi /var/cache/yum/x86_64/7/updates/packages/scap-security-guide-0.1.36-9.el7.centos.noarch.rpm | tail -c9

私の場合、これはf4a80eb5です(あなたの場合も同じであると思います)

次に、rpmの既知のgpg pubkeysをすべてリストし、パッケージを使用したものを検索します

rpm -q gpg-pubkey --qf '%{NAME}-%{VERSION}-%{RELEASE}\t%{SUMMARY}\n' | grep f4a80eb5

結果は1つになるはずです

gpg-pubkey-f4a80eb5-53a7ff4b    gpg(CentOS-7 Key (CentOS 7 Official Signing Key) <[email protected]>)

rpm -q gpg-pubkeyコマンドからの出力がない場合、これは次の2つのいずれかである可能性があります

  1. rpmはpubkeyを認識できず、それをインポートする必要がある場合があります

    rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
    
  2. ミラーからのパッケージは[〜#〜] not [〜#〜]正しいキーで署名されており、これはMITM-Attackまたはミラーオーバーテイクである可能性があります。

あなたがちょうど1つの結果を得るならば、私は今何が問題であることができるか本当に知りません。私はstraceを深く掘り下げ、実際に何が問題なのかを理解します。

1
xx4h